I am trying to have a socket server accepting plain text. I defined my service
as:
| <server>
| <mbean code="org.jboss.remoting.transport.Connector"
| name="jboss.remoting:service=Connector,transport=Socket"
| display-name="Socket transport Connector">
| <attribute name="Configuration">
|
| <config>
|
| <invoker transport="socket">
| <!-- The following are specific to socket invoker -->
| <attribute name="numAcceptThreads">1</attribute>
| <attribute name="maxPoolSize">303</attribute>
| <attribute name="clientMaxPoolSize"
isParam="true">304</attribute>
| <attribute name="socketTimeout">60000</attribute>
| <attribute
name="serverBindAddress">${jboss.bind.address}</attribute>
| <attribute name="serverBindPort">8084</attribute>
| <attribute name="enableTcpNoDelay"
isParam="true">false</attribute>
| <attribute name="backlog">200</attribute>
| <attribute name="datatype"
isParam="true">invocation</attribute>
| <attribute name="marshaller"
isParam="true">com.test.socket.V75SocketServer.TextMarshaller</attribute>
| <attribute name="unmarshaller"
isParam="true">com.test.socket.V75SocketServer.TextUnMarshaller</attribute>
| <attribute
name="serverSocketClass">com.test.socket.V75SocketServer.SimpleInputStreamWrapper</attribute>
| </invoker>
|
| <handlers>
| <handler
subsystem="V75">com.test.socket.V75SocketServer.Handler</handler>
| </handlers>
| </config>
| </attribute>
|
| </mbean>
| </server>
|
on deployment I get the following on the server:
| Invoker started for locator: InvokerLocator
[socket://x.x.x.x:8084/?clientMaxPoolSize=304&datatype=invocation&enableTcpNoDelay=false&marshaller=com.test.socket.V75SocketServer.TextMarshaller&unmarshaller=com.test.socket.V75SocketServer.TextUnMarshaller]
|
When I debug I see that my SimpleInputStreamWrapper is used but my
marshaller/unmarshaller is not and I subsequently get the following exception:
23:13:00,031 ERROR [ServerThread] failed to process invocation.
| java.io.StreamCorruptedException: invalid stream header
| at
java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:764)
| at java.io.ObjectInputStream.<init>(ObjectInputStream.java:277)
| at
org.jboss.remoting.loading.ObjectInputStreamWithClassLoader.<init>(ObjectInputStreamWithClassLoader.java:73)
| at
org.jboss.remoting.serialization.impl.java.JavaSerializationManager.createInput(JavaSerializationManager.java:52)
| at
org.jboss.remoting.serialization.SerializationManager.createRegularInput(SerializationManager.java:44)
| at
org.jboss.remoting.serialization.impl.java.JavaSerializationManager.receiveObject(JavaSerializationManager.java:123)
| at
org.jboss.remoting.marshal.serializable.SerializableUnMarshaller.read(SerializableUnMarshaller.java:66)
| at
org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:350)
| at
org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:398)
| at
org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:239)
|
What am I missing? Please Help!
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4057342#4057342
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4057342
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user