2017-06-01 112 views
0

我正在开发的xpages应用程序使用一个Web服务来存储附加到存储库中xpages的文件。为此,我调用Java开发的代理,其客户端使用Web服务是从框架APACHE CXF创建的。 最多2.5 MB的文件在存储库中没有问题存储,但Web服务在下面给出的错误文件较大。我通过Eclipse执行了使用Web服务的相同过程,并且对于大于2.5 MB的文件没有发生错误。有谁知道问题是否与某些Domino服务器配置有关?它可能是Domino服务器和存储库所在的服务器之间的通信问题吗?有没有人有类似的问题?CXF Web服务的Domino限制?

产生java.io.IOException:错误写入服务器

HTTP JVM: javax.xml.ws.WebServiceException: java.io.IOException: Error 
writing to server 
HTTP JVM: at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:213) 
HTTP JVM: at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:163) 
HTTP JVM: at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:95) 
HTTP JVM: at com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:117) 
HTTP JVM: at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:599) 
HTTP JVM: at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:558) 
HTTP JVM: at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:543) 
HTTP JVM: at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:440) 
HTTP JVM: at com.sun.xml.internal.ws.client.Stub.process(Stub.java:223) 
HTTP JVM: at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:136) 
HTTP JVM: at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:110) 
HTTP JVM: at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:90) 
HTTP JVM: at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:119) 
HTTP JVM: at com.sun.proxy.$Proxy30.incluirDossie(Unknown Source) 
HTTP JVM: at JavaAgent.NotesMain(Unknown Source) 
HTTP JVM: at lotus.domino.AgentBase.runNotes(Unknown Source) 
HTTP JVM: at lotus.domino.NotesThread.run(Unknown Source) 
HTTP JVM: Caused by: 
HTTP JVM: java.io.IOException: Error writing to server 
HTTP JVM: at sun.net.www.protocol.http.HttpURLConnection.writeRequests(HttpURLConnection.java:594) 
HTTP JVM: at sun.net.www.protocol.http.HttpURLConnection.writeRequests(HttpURLConnection.java:606) 
HTTP JVM: at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1228) 
HTTP JVM: at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:390) 
HTTP JVM: at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:210) 
HTTP JVM: ... 16 more 
+0

我已经开发了一些使用jax-ws在java代理中的多米诺骨牌上的web服务客户端。我从来没有像这样的问题,并转移大于2.5MB的文件。根据我的经验,我无法想象多米诺服务器上的配置可能导致此问题。你能否提供一个完整的堆栈跟踪而不仅仅是最终的消息? –

+0

我在问题中放入堆栈跟踪 –

+0

堆栈跟踪看起来像在运行时不使用apache cxf。它看起来更像你使用jvm集成的jax-ws客户端。你有没有附加到代理的apache cxf库或将它们放到jvm/lib/ext中?如果将库附加到代理,则应该注意附带库存在内存泄漏(http://www-01.ibm.com/support/docview.wss?uid=swg1LO49880)。最好的方法是通过notes.ini var JavaUserClasses或JavaUserClassesExt添加它们。 –

回答

0

你检查Domino服务器和“最大POST数据”设置“请求内容的最大大小”?默认值通常分别为10MB和无限(0),但可能已被设置为更低。这些设置位于服务器文档中,然后转到Internet协议 - Domino Web引擎选项卡。检查这些值是什么,并根据需要进行更新。如果更改设置,则需要重新启动HTTP。

+0

不能解决这个问题,因为这个设置只与web服务提供者有关,而不是客户端 –