- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Jetty,并在我的构建服务器上遇到以下问题(我在我的开发计算机上没有遇到此问题)。
2013-07-22 14:19:20,647972350: WARN : org.apache.cxf.phase.PhaseInterceptorChain: Interceptor for {http://rs.rtiservice.esi.v21.xxxx.com/}RTIServiceRSI has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not send Message.
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
<SNIP>
at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.SocketTimeoutException: SocketTimeoutException invoking http://localhost:25000/esi-rtiservice/ESI/RTIService/rs-rtiservice/addLineItem/: Read timed out
<SNIP>
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
... 104 more
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
<SNIP>
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1308)
... 107 more
2013-07-22 14:19:20,654681221: ERROR : [qtp23135205-124] com.xxx.v21.mpos.MPOSEndPoint: System error
javax.ws.rs.NotAuthorizedException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
<SNIP>
at java.lang.Thread.run(Thread.java:662)
2013-07-22 14:19:20,656234277: WARN : org.apache.cxf.phase.PhaseInterceptorChain: Interceptor for {http://mpos.v21.xxx.com/}MPOSEndPoint has thrown exception, unwinding now
java.lang.IllegalStateException: WRITER
at org.eclipse.jetty.server.Response.getOutputStream(Response.java:673)
<SNIP>
at java.lang.Thread.run(Thread.java:662)
2013-07-22 14:19:20,658931461: WARN : [qtp23135205-124] org.apache.cxf.phase.PhaseInterceptorChain: Interceptor for {http://mpos.v21.xxx.com/}MPOSEndPoint has thrown exception, unwinding now
java.lang.IllegalStateException: WRITER
at org.eclipse.jetty.server.Response.getOutputStream(Response.java:673)
at org.apache.cxf.transport.http.AbstractHTTPDestination.flushHeaders(AbstractHTTPDestination.java:564)
现在我可以看到有些人说我需要在连接上设置ReceiveTimeout
。 1这些人似乎不像我一样有 NotAuthorizedException
。
我看到的所有例子都是这样的:
<http-conf:destination
name="{http://apache.org/hello_world_soap_http}SoapPort.http-destination">
<http-conf:server ReceiveTimeout="30000"
HonorKeepAlive="true" />
</http-conf:destination>
相反,我这样定义我的:
<jaxrs:client id="itemService" address="http://${itemservice.address}/esi-itemservice/ESI/ItemService" serviceClass="com.xxx.v21.esi.itemservice.rs.ItemServiceRSI" inheritHeaders="true">
<jaxrs:headers>
<entry key="Accept" value="application/xml" />
</jaxrs:headers>
<jaxrs:providers>
<ref bean="jaxbextprovider" />
</jaxrs:providers>
</jaxrs:client>
有人可以告诉我如何在我的连接上设置 ReceiveTimeout
- 或者请给我其他东西吗?
最佳答案
我还没有找到原因,但我采取的解决方法是在集成测试中从 Jetty 切换并开始使用 Cargo 下载 Tomcat、安装工件/wars 并运行测试。
Cargo 测试需要 5 秒,Jetty 需要 5 分钟!所以他们现在都跑了,跑了2分钟,而不是快一个小时了!
简而言之,看看 Cargo (cargo.codehaus.org)
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.4.5</version>
<configuration>
<container>
<containerId>tomcat7x</containerId>
<zipUrlInstaller>
<url>ftp://x.x.x.x/install_pack/Tomcat7/tomcat7.zip</url>
<downloadDir>${project.build.directory}/cargo/downloads</downloadDir>
</zipUrlInstaller>
<output>${project.build.directory}/cargo/container.log</output>
<append>false</append>
<log>${project.build.directory}/cargo/cargo.log</log>
<timeout>240000</timeout>
<systemProperties>
<logLevel>INFO</logLevel>
<itemservice.address>localhost:9080</itemservice.address>
<deviceservice.address>localhost:9080</deviceservice.address>
<userservice.address>localhost:9080</userservice.address>
<rtiservice.address>localhost:9080</rtiservice.address>
<corporateservice.address>localhost:9080</corporateservice.address>
</systemProperties>
</container>
<configuration>
<properties>
<cargo.servlet.port>9080</cargo.servlet.port>
<cargo.tomcat.ajp.port>9085</cargo.tomcat.ajp.port>
<cargo.jvmargs>-XX:MaxPermSize=256m -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled</cargo.jvmargs>
<cargo.logging>high</cargo.logging>
</properties>
</configuration>
<deployables>
<deployable>
<groupId>com.test</groupId>
<artifactId>test-war</artifactId>
<type>war</type>
</deployable>
</deployables>
</configuration>
<executions>
<execution>
<id>start-server</id>
<phase>pre-integration-test</phase>
<goals>
<goal>start</goal>
</goals>
</execution>
<execution>
<id>stop-server</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>
关于java - 无法发送消息 : SocketTimeoutException : NotAuthorizedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17792444/
我有一个给定的 FTP 服务器。我可以通过 WinSCP 和其他程序连接到服务器。我已经通过 Java 连接到服务器,但过了一会儿我无法连接。根据 WinSCP,我可以一直连接。现在的问题是服务器是问
以下代码应根据是否达到超时抛出异常: public boolean isAlive(int workerNum) throws Exception { System.out.println("
我正在编写一个从服务器接收数据的 Android 应用程序。理论上不可能有互联网连接,所以我尝试通过捕获 SocketTimeoutException 来显示错误消息重试屏幕或其他内容来捕获这种情况。
我试图在我的 Android 手机上测试我的第一个应用程序,但扫描后,我收到以下错误消息: “ Uncaught Error :java.error.sockettimeoutexception:10
当客户端 A 连接到服务器 B 时,我们在服务器 B 上收到 java.net.SocketTimeoutException。不知道为什么。客户端正在向服务器发送数据,然后服务器抛出此异常。如何解决此
以下是我尝试编写的 Java 应用程序的一小部分: Socket socket = new Socket(hostname, portnumber); DataInputStream socketIn
'java.net.SocketTimeoutException:连接超时' 循环一段时间后我收到此错误。为什么我会收到 SocketTimeoutException?我该如何修复这个错误? @Ove
很抱歉,如果这已发布在我工作/寻找几天的地方。 问题: 当通过对等网络与 Android 设备进行通信时,我收到 SocketTimeoutExceptions。 详细信息: 发生这种情况时,andr
我正在尝试使用 DOT NET 网络服务将我的 Android 应用程序连接到我计算机中存在的 MySql 数据库(本地主机)。我能够仅通过单一输入 (EditText) 连接到在线数据库。这里有 3
我正在我的 android 应用程序中使用改造构建一个 Restful 客户端,但是我在尝试从我的网络服务中检索数据时遇到异常,第一次调用毫无异常(exception)地工作,但我更改了参数并重试获取
我有一个复杂的应用程序,可以从我在 AWS 上的网络服务下载大量内容。但是,我一直有 50% 的时间收到 SocketTimeoutException。根据我的研究,我怀疑可能有以下原因: 连接超时
我想在我的应用程序中使用 REST API。它为我从这个应用程序发出的所有请求抛出 SocketTimeoutException。 Logcat 输出:(您也可以在此处看到带有漂亮格式的输出:http
假设我有一个名为 SuperSocket 的套接字变量,有什么方法可以捕获超时异常吗? SuperSocket.setSoTimeout(5000); catch (Soc
我为 Retrofit 设置: private Interceptor interceptor = new Interceptor() { @Override publ
我正在尝试向服务器发送 POST 请求以获取数据,但有时会发生 SocketTimeoutException! 我使用 Ok3Client 解决了它,但我遇到了同样的异常我该如何解决它? 我的代码在下
我正在运行多个工作线程(大约 10 个)来访问来自 redis Q 的数据。 对于我正在为 Jedis Client 使用无限超时。 Jedis jedis = pool.getResource();
我有一个运行spring-boot的应用程序,可以访问mongodb 当我使用单个docker run命令时,该应用程序运行正常。但是,当我尝试将它们全部作为服务运行时,由于某种原因,该应用程序永远无
我正在开发一个 Web 应用程序,它接受来自第三方的 json 数据,处理该数据并使用处理后的 json 数据响应它们。 我在生产服务器上收到 java.net.SocketTimeoutExcept
我们正在学习使用 JSOUP 和 urlconnection,因此我们正在解析我们选择的网站中的页面,并解析页面以回答有趣的问题。 一切正常,但是时不时地我会收到 SocketTimeOutExcep
我正在编写一个小应用程序,它使用深度优先搜索通过URL扫描所有页面。所以我应该多联系。在 n 页之后,我通常会捕获 SocketTimeoutException 并且我的应用程序崩溃。那么避免这种情况
我是一名优秀的程序员,十分优秀!