Towards remoting-jboss-beans.xml
ron_sigal Nov 4, 2008 12:48 PMI'm working on moving the Remoting related stuff in AS from deploy/remoting-service.xml to deploy/remoting-jboss-beans.xml, and I have a few questions to make sure I'm not doing something "anti-idiomatic". A skeletal version of remoting-jboss-beans.xml is appended below.
1. Are there any hidden gotcha's I'm missing?
2. Are there any conventions, e.g. naming conventions, I should be aware of?
3. Am I correct in understanding that setting "registerDirectly=false" in org.jboss.aop.microcontainer.aspects.jmx.JMX supports hot deployment?
4. JBAS-3926 is "Move remoting transports out of conf/jboss-service.xml to a remoting-beans.xml", but I see that all the *-beans.xml files in AS 5 are named *-jboss-beans.xml. Is the latter form just a convention for *-beans.xml files that come with the AS?
Thanks.
================================================================================
<deployment xmlns="urn:jboss:bean-deployer:2.0"> <bean name="UnifiedInvoker" class="org.jboss.invocation.unified.server.UnifiedInvoker"> <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=invoker,type=unified",exposedInterface=org.jboss.invocation.unified.server.UnifiedInvokerMBean.class,registerDirectly=true)</annotation> <property name="connector"><inject bean="UnifiedInvokerConnector"/></property> <depends>TransactionManager</depends> </bean> <bean name="UnifiedInvokerConnector" class="org.jboss.remoting.transport.Connector"> <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.remoting:service=Connector,transport=socket",exposedInterface=org.jboss.remoting.transport.ConnectorMBean.class,registerDirectly=true)</annotation> <property name="serverConfiguration"><inject bean="UnifiedInvokerConfiguration"/></property> </bean> <!-- Remoting Server Configuration --> <bean name="UnifiedInvokerConfiguration" class="org.jboss.remoting.ServerConfiguration"> <constructor> <parameter>socket</parameter> </constructor> <!-- parameters published to the client --> <property name="invokerLocatorParameters"> <map keyClass="java.lang.String" valueClass="java.lang.String"> <entry><key>serverBindAddress</key> <value>${jboss.bind.address}</value></entry> <entry> <key>serverBindPort</key> <value> <value-factory bean="ServiceBindingManager" method="getStringBinding"> <parameter>jboss.remoting:service=Connector,transport=socket</parameter> <parameter>${port}</parameter> </value-factory> </value> </entry> <entry><key>dataType</key> <value>invocation</value></entry> <entry><key>marshaller</key> <value>org.jboss.invocation.unified.marshall.InvocationMarshaller</value></entry> <entry><key>unmarshaller</key> <value>org.jboss.invocation.unified.marshall.InvocationUnMarshaller</value></entry> </map> </property> <!-- parameters known only to the server --> <property name="serverParameters"> <map keyClass="java.lang.String" valueClass="java.lang.String"> <!-- ... --> </map> </property> <property name="invocationHandlers"> <map keyClass="java.lang.String" valueClass="java.lang.String"> <!-- The JSR88 deployment service StreamingTarget handler --> <entry><key>JSR88</key> <value>org.jboss.deployment.remoting.DeployHandler</value></entry> </map> </property> </bean> </deployment>