0 Replies Latest reply on Jun 30, 2007 10:01 PM by Bernhard Hurzeler

    How do I onfigure a simple socket server (TEXT)?

    Bernhard Hurzeler Novice

      I need help!
      How do I go about to create a simple text socket server that I can communicate with for example via telnet? I use JBoss4.0.5GA and JBoss4.2.0GA.

      On JBoss4.0.5GA the problem I am facing is that the un/marshaller does not get used. On JBoss4.2.0GA I get

      --- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
      
      ObjectName: com.test:service=Connector,transport=socket
      
       State: FAILED
      
      Reason: org.jboss.remoting.InvalidConfigurationException: The invoker for locator (InvokerLocator [socket://localhost:8084/?dataType=invocation&enableTcpNoDelay=true&marshaller=com.test.socket.V75SocketServer.TextMarshaller&socketTimeout=600000&unmarshaller=com.test.socket.V75SocketServer.TextUnMarshaller]) is already in use by another Connector. Either change the locator or add new handlers to existing Connector.
      


      I can see that a socket server is defined in server/default/conf/jboss-service.xml but I would think it should be possible to stick another socket server on a different port.

      <server>
       <!-- ==================================================================== -->
       <!-- Invokers to the JMX node -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.remoting.transport.Connector"
       name="com.test:service=Connector,transport=socket"
       display-name="Socket transport Connector">
       <attribute name="Configuration">
       <config>
       <invoker transport="socket">
       <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>
       <attribute name="socketTimeout" isParam="true">600000</attribute>
       <attribute name="serverBindAddress">${jboss.bind.address}</attribute>
       <attribute name="serverBindPort">8084</attribute>
       <attribute name="enableTcpNoDelay" isParam="true">true</attribute>
       </invoker>
       <handlers>
       <handler subsystem="V75">com.test.socket.V75SocketServer.Handler</handler>
       </handlers>
       </config>
       </attribute>
       </mbean>
      
      </server>


      Thanks for your help.