有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

玻璃鱼3爪哇。尼奥。频道。ClosedChannel异常客户端关闭SSL

我有一个在glassfish3上运行的Web服务。一台机器上有一台服务器

在第二台机器上,我有一个java(GUI)应用程序,它正在运行并调用上述web服务

在我的webservice调用中,我将一个文件作为SOAP附件发送。它到达服务器,然后处理文件,然后通过https返回到我的客户机

如果我的文件太大,需要15分钟以上,操作将失败,我将得到以下错误:

在客户端: 无法创建SOAP消息,因为异常:org。jvnet。咪咪拉。MIMEParsingException:javax。网ssl。SSLException:SSL对等服务器错误关闭

在服务器端: javax。servlet。ServletException 在org。玻璃鱼。网络服务。JAXWSServlet。doPost(JAXWSServlet.java:150) 在javax。servlet。http。HttpServlet。服务(HttpServlet.java:755) 在javax。servlet。http。HttpServlet。服务(HttpServlet.java:848) 在org。阿帕奇。卡塔琳娜。果心标准包装。服务(StandardWrapper.java:1534) 在org。阿帕奇。卡塔琳娜。果心标准包装阀。调用(StandardWrapperValve.java:281) 在org。阿帕奇。卡塔琳娜。果心标准连接阀。调用(StandardContextValve.java:175) 在org。阿帕奇。卡塔琳娜。果心标准管道。doInvoke(StandardPipeline.java:655) 在org。阿帕奇。卡塔琳娜。果心标准管道。调用(StandardPipeline.java:595) 在com。太阳企业网状物网络管道。调用(WebPipeline.java:98) 在com。太阳企业网状物PESESSION锁定标准管道。调用(PESessionLockingStandardPipeline.java:91) 在org。阿帕奇。卡塔琳娜。果心标准阀门。调用(StandardHostValve.java:162) 在org。阿帕奇。卡塔琳娜。连接器。郊狼适应者。doService(CoyoteAdapter.java:326) 在org。阿帕奇。卡塔琳娜。连接器。郊狼适应者。服务(CoyoteAdapter.java:227) 在com。太阳企业v3。服务。impl。集装箱司机。服务(ContainerMapper.java:170) 在com。太阳灰熊http。处理器任务。invokeAdapter(ProcessorTask.java:822) 在com。太阳灰熊http。处理器任务。doProcess(ProcessorTask.java:719) 在com。太阳灰熊http。处理器任务。进程(ProcessorTask.java:1013) 在com。太阳灰熊http。DefaultProtocolFilter。执行(DefaultProtocolFilter.java:225) 在com。太阳灰熊DefaultProtocolChain。executeProtocolFilter(DefaultProtocolChain.java:137) 在com。太阳灰熊DefaultProtocolChain。执行(DefaultProtocolChain.java:104) 在com。太阳灰熊DefaultProtocolChain。执行(DefaultProtocolChain.java:90) 在com。太阳灰熊http。HttpProtocolChain。执行(HttpProtocolChain.java:79) 在com。太阳灰熊ProtocolChainContextTask。doCall(ProtocolChainContextTask.java:54) 在com。太阳灰熊SelectionKeyContextTask。调用(SelectionKeyContextTask.java:59) 在com。太阳灰熊上下文任务。运行(ContextTask.java:71) 在com。太阳灰熊util。抽象线程池$Worker。doWork(AbstractThreadPool.java:532) 在com。太阳灰熊util。抽象线程池$Worker。运行(AbstractThreadPool.java:513) 在爪哇。朗。丝线。运行(Thread.java:662) 原因:javax。xml。ws。WebServiceException:com。反恐委员会。wstx。异常:java。尼奥。频道。ClosedChannel异常 在com。太阳xml。ws。编码。MtomCodec。编码(MtomCodec.java:184) 在com。太阳xml。ws。编码。SOAPBindingCodec。编码(SOAPBindingCodec.java:282) 在com。太阳xml。ws。运输http。HttpAdapter。encodePacket(HttpAdapter.java:400) 在com。太阳xml。ws。运输http。HttpAdapter。访问费$100(HttpAdapter.java:96) 在com。太阳xml。ws。运输http。HttpAdapter$HttpToolkit。句柄(HttpAdapter.java:618) 在com。太阳xml。ws。运输http。HttpAdapter。句柄(HttpAdapter.java:259) 在com。太阳xml。ws。运输http。servlet。ServletAdapter。句柄(ServletAdapter.java:162) 在org。玻璃鱼。网络服务。JAXWSServlet。doPost(JAXWSServlet.java:145) ... 还有27个 原因:c嗯。反恐委员会。wstx。异常:java。尼奥。频道。ClosedChannel异常 在com。反恐委员会。wstx。西南。BaseStreamWriter。flush(BaseStreamWriter.java:313) 在com。太阳xml。ws。util。xml。XMLStreamWriterFilter。flush(XMLStreamWriterFilter.java:71) 在com。太阳xml。ws。流动。XMLStreamWriterUtil。getOutputStream(XMLStreamWriterUtil.java:101) 在com。太阳xml。ws。消息jaxb。JAXBMessage。WritePayloado(JAXBMessage.java:320) 在com。太阳xml。ws。消息AbstractMessageImpl。writeTo(AbstractMessageImpl.java:147) 在com。太阳xml。ws。编码。MtomCodec。编码(MtomCodec.java:168) ... 34多 原因:org。阿帕奇。卡塔琳娜。连接器。ClientBortException:java。尼奥。频道。ClosedChannel异常 在org。阿帕奇。卡塔琳娜。连接器。输出缓冲区。doFlush(OutputBuffer.java:382) 在org。阿帕奇。卡塔琳娜。连接器。输出缓冲区。刷新(OutputBuffer.java:351) 在org。阿帕奇。卡塔琳娜。连接器。郊狼流。刷新(CoyoteOutputStream.java:175) 在com。反恐委员会。wstx。木卫一。UTF8作家。刷新(UTF8Writer.java:99) 在com。反恐委员会。wstx。西南。缓冲XMLWriter。flush(BufferingXmlWriter.java:214) 在com。反恐委员会。wstx。西南。BaseStreamWriter。flush(BaseStreamWriter.java:311) ... 39多 原因:java。尼奥。频道。ClosedChannel异常 在太阳下。尼奥。索克坦林普尔主教。打开(socketchannelmpl.java:133) 在太阳下。尼奥。索克坦林普尔主教。write(socketchannelmpl.java:324) 在com。太阳灰熊util。输出编写器。flushChannel(OutputWriter.java:108) 在com。太阳灰熊util。输出编写器。flushChannel(OutputWriter.java:76) 在com。太阳灰熊util。SSLOutputWriter。flushChannel(SSLOutputWriter.java:102) 在com。太阳灰熊ssl。SSLOutputBuffer。flushChannel(SSLOutputBuffer.java:138) 在com。太阳灰熊http。SocketChannelOutputBuffer。flushBuffer(SocketChannelOutputBuffer.java:398) 在com。太阳灰熊http。SocketChannelOutputBuffer。刷新(SocketChannelOutputBuffer.java:376) 在com。太阳灰熊http。处理器任务。操作(ProcessorTask.java:1241) 在com。太阳灰熊ssl。SSLProcessorTask。操作(SSLProcessorTask.java:164) 在com。太阳灰熊tcp。回答动作(Response.java:268) 在org。阿帕奇。卡塔琳娜。连接器。输出缓冲区。doFlush(输出

我认为SSL会话在客户端超时,而不是在服务器端超时

现在我正试图找出一种方法来增加客户端的SSL超时时间,我想是15分钟

我不能这样做,任何帮助都将被感激。。。 多谢各位


共 (2) 个答案

  1. # 1 楼答案

    I think that SSL session is timed out on my client side

    不可以。您的客户端遇到了一个关闭(重置)连接,但没有首先从服务器收到SSL close_通知。所以不是客户。我猜服务器正在施加一个帖子大小限制,当你超过这个限制时就会关闭连接

    如果你发送的数据太多,你会在某处遇到异常。要么服从极限,要么提高极限,然后服从新的值

  2. # 2 楼答案

    打开你的域名。并尝试找出您正在使用的SSL版本。 如果您看到类似以下内容[ssl3 enabled=“false”],则默认超时为100秒的是SSL2

    <ssl classname="com.sun.enterprise.security.ssl.GlassfishSSLImpl"  ssl3-enabled="false" cert-nickname="s1as"></ssl>
    

    在这种情况下 您可以将一些更大的值添加到ssl会话超时属性[您可能需要添加这个]

    或者,您可以选择使用ssl3 over ssl,默认情况下,ssl的超时值更大

    参考:http://download.oracle.com/docs/cd/E19798-01/821-1753/abhaq/index.html