小编use*_*875的帖子

获取java.lang.IllegalStateException:未读块数据

我正在将ActiveMQ4.0和Jboss4.0分别升级到AMQ5.4.3和Jboss5.1.0.目前的JDK版本是1.5.当我从SoapUI控制台发出soap请求调用时,对于某些服务,得到以下错误.

java.lang.IllegalStateException: unread block data
    at java.io.ObjectInputStream$BlockDataInputStream.setBlockDataMode(ObjectInputStream.java:2326)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1336)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1910)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1834)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
    at org.apache.activemq.command.ActiveMQObjectMessage.getObject(ActiveMQObjectMessage.java:184)
    at com.netratings.ds.esb.impl.transport.jms.JmsEndpointImpl$JmsEndpointListener.onMessage(JmsEndpointImpl.java:67)
    at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1229)
    at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:134)
    at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:205)
    at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
    at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
    at java.lang.Thread.run(Thread.java:595)
Run Code Online (Sandbox Code Playgroud)

在大量迭代之后突然发生此错误,并且只有少数SoapUI调用.似乎没有错误的模式.但只有在呼叫进入消息同步器部分时才会出现错误.

这是我的ActiveMQ.xml文件

<beans
  xmlns="http://www.springframework.org/schema/beans"
  xmlns:amq="http://activemq.apache.org/schema/core"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
  http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">

    <!-- Allows us to use system properties as variables in this configuration file -->
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <value>file:${activemq.base}/conf/credentials.properties</value>
        </property>      
    </bean>

    <!-- 
        The <broker> element is used to configure the ActiveMQ …
Run Code Online (Sandbox Code Playgroud)

activemq-classic jms java-ee

5
推荐指数
0
解决办法
1844
查看次数

标签 统计

activemq-classic ×1

java-ee ×1

jms ×1