-
1. Re: AS7 clustering and remote outbound connection issue
rhusar Jun 21, 2012 9:54 AM (in response to mannu_cse) -
2. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 21, 2012 10:28 AM (in response to rhusar)I also tried with 7.2.0.Alpha1-SNAPSHOT, and got the same error
I dont want to configure all remote outbound connections as it requires repackaging of aplication everytime there is a change
in cluster's topology.
-
3. Re: AS7 clustering and remote outbound connection issue
jaikiran Jun 21, 2012 10:49 AM (in response to mannu_cse)You should configure the connection configurations for the cluster name in your jboss-ejb-client.xml of the deployment. See the jboss-ejb-client_1_2.xsd for more details (you can find it in JBOSS_HOME/docs/schema folder).
-
4. Re: AS7 clustering and remote outbound connection issue
rhusar Jun 21, 2012 11:00 AM (in response to mannu_cse)1 of 1 people found this helpfulManoj,
I think you should read up on
https://docs.jboss.org/author/display/AS71/EJB+invocations+from+a+remote+server+instance
because what you want to do will not work. You have 2 different applications so its more of a cluster to cluster communication.
I dont want to configure all remote outbound connections as it requires repackaging of aplication everytime there is a change in cluster's topology.
That shouldnt be necesary. You only need to add new <remote-destination .../> when topology changes, no need to repackage.
R
-
5. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 21, 2012 11:58 AM (in response to rhusar)Alright, Even if I add more outbound connections in standalone-full-ha.xml, my application only does lookup in the server configured in jboss-ejb-client.xml
so its not helping me
-
6. Re: AS7 clustering and remote outbound connection issue
rhusar Jun 21, 2012 11:58 AM (in response to mannu_cse)I see that you deleted your reply, but I was about to say:
Are both of those servers really remote? Otherwise the logging is wrong and should be fixed.
-
7. Re: AS7 clustering and remote outbound connection issue
rhusar Jun 21, 2012 12:01 PM (in response to mannu_cse)1 of 1 people found this helpfulAFAIR there should be no servers defined in jboss-ejb-client.xml -- only reference to the connection where all the servers are defined.
-
8. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 21, 2012 12:17 PM (in response to rhusar)Okay, I have 3 jboss nodes running in same machine with port bind offset 10, 20, 30, all jboss are placed in different directory by the way.
here is my jboss-ejb-client.xml of A.ear, I have defined the "ejb-security-realm" and outbound connection in node1 only (in it's standalone-full-ha.xml)
Am I supposed to replicate this to other nodes also?
<jboss-ejb-client xmlns:xsi="urn:jboss:ejb-client:1.0" xsi:noNamespaceSchemaLocation="jboss-ejb-client_1_2.xsd"
>
<client-context >
<ejb-receivers >
<remoting-ejb-receiver outbound-connection-ref="remote-ejb-connection"/>
</ejb-receivers>
<clusters >
<cluster max-allowed-connected-nodes="200" name="ejb" username="guest" security-realm="ejb-security-realm" cluster-node-selector="sdk.service.producer.NodeSelector">
<node name="node1"
security-realm="ejb-security-realm" username="guest" connect-timeout="30000">
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false"/>
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="true"/>
</connection-creation-options>
</node>
<node name="node2"
security-realm="ejb-security-realm" username="guest" connect-timeout="30000">
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false"/>
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="true"/>
</connection-creation-options>
</node>
<node name="node3"
security-realm="ejb-security-realm" username="guest" connect-timeout="30000">
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false"/>
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="true"/>
</connection-creation-options>
</node>
</cluster>
</clusters>
</client-context>
</jboss-ejb-client>
-
9. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 21, 2012 12:20 PM (in response to mannu_cse)Okay, looks like I am quite close to it now, when I deploy the client application on node1, I see this error for both node2, and node3
Should I have to specify user name password in jboss-ejb-client.xml if yes, please let me know how?
17:05:59,431 INFO [org.jboss.ejb.client.remoting.RemotingConnectionClusterNodeManager] (ejb-client-
cluster-node-connection-creation-8-thread-2) Could not create a connection for cluster node ClusterN
ode{clusterName='ejb', nodeName='node3', clientMappings=[ClientMapping{sourceNetworkAddress=/0:0:0:0
:0:0:0:0, sourceNetworkMaskBits=0, destinationAddress='127.0.0.1', destinationPort=4477}], resolvedD
estination=[Destination address=127.0.0.1, destination port=4477]} in cluster ejb: java.lang.Runtime
Exception: javax.security.sasl.SaslException: Authentication failed: all available authentication me
chanisms failed
at org.jboss.ejb.client.remoting.IoFutureHelper.get(IoFutureHelper.java:91)
at org.jboss.ejb.client.remoting.RemotingConnectionClusterNodeManager.getEJBReceiver(Remotin
gConnectionClusterNodeManager.java:104)
at org.jboss.ejb.client.ClusterContext$EJBReceiverAssociationTask.call(ClusterContext.java:4
06)
at org.jboss.ejb.client.ClusterContext$EJBReceiverAssociationTask.call(ClusterContext.java:3
80)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_04]
at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_04]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1
.7.0_04]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1
.7.0_04]
-
10. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 22, 2012 5:00 AM (in response to mannu_cse)Finally it works, I had to define the cluster correctly
But this has a severe limitation, if I add any more node in the cluster then I have to change this file and repackage the application
Is there any other way to do this? please help
this is my jboss-ejb-client.xml
<jboss-ejb-client xmlns:xsi="urn:jboss:ejb-client:1.0" xsi:noNamespaceSchemaLocation="jboss-ejb-client_1_2.xsd">
<client-context deployment-node-selector="sdk.service.producer.DeploymentSelector" >
<ejb-receivers exclude-local-receiver="true">
<remoting-ejb-receiver outbound-connection-ref="remote-ejb-connection"/>
</ejb-receivers>
<clusters >
<cluster max-allowed-connected-nodes="200" name="ejb" username="guest" security-realm="ejb-security-realm" cluster-node-selector="sdk.service.producer.NodeSelector">
<node name="node1"
security-realm="ejb-security-realm" username="guest" connect-timeout="30000" >
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false"/>
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="false"/>
</connection-creation-options>
</node>
<node name="node2"
security-realm="ejb-security-realm" username="guest" connect-timeout="30000">
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false"/>
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="false"/>
</connection-creation-options>
</node>
<node name="node3"
security-realm="ejb-security-realm" username="guest" connect-timeout="30000">
<connection-creation-options>
<property name="org.xnio.Options.SSL_ENABLED" value="false"/>
<property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="false"/>
</connection-creation-options>
</node>
</cluster>
</clusters>
</client-context>
</jboss-ejb-client>
-
11. Re: AS7 clustering and remote outbound connection issue
jaikiran Jun 22, 2012 6:46 AM (in response to mannu_cse)You don't need it to configure in that manner. You can instead do it this way:
<jboss-ejb-client xmlns:xsi="urn:jboss:ejb-client:1.0" xsi:noNamespaceSchemaLocation="jboss-ejb-client_1_2.xsd"> ... <ejb-receivers exclude-local-receiver="true"> <remoting-ejb-receiver outbound-connection-ref="remote-ejb-connection"/> </ejb-receivers> <clusters > <cluster ... name="ejb" username="guest" security-realm="ejb-security-realm" ...> <connection-creation-options> <property name="org.xnio.Options.SSL_ENABLED" value="false"/> <property name="org.xnio.Options.SASL_POLICY_NOANONYMOUS" value="false"/> </connection-creation-options> </cluster> </clusters> </client-context> </jboss-ejb-client>
-
12. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 22, 2012 6:55 AM (in response to jaikiran)Thanks a lot, it just figured it out too, it works like a peace of cake now
Still it would have been great if I didnt have to specify the cluster name as well,
this would have made my day :-)
-
13. Re: AS7 clustering and remote outbound connection issue
jaikiran Jun 22, 2012 7:05 AM (in response to mannu_cse)Manoj Uikey wrote:
Still it would have been great if I didnt have to specify the cluster name as well,
Why not? Clusters are identified by a name, so leaving out the name won't be right.
-
14. Re: AS7 clustering and remote outbound connection issue
mannu_cse Jun 22, 2012 7:53 AM (in response to jaikiran)Since we are packaging jboss-ejb-client.xml inside application, it's like saying this EAR can be deployed in a cluster named "ejb"
what if I go on and try to deploy my app in a different cluster, it wont work.
I wonder if just
<remoting-ejb-receiver outbound-connection-ref="remote-ejb-connection"/>
is enough to locate the node and find out into which cluster this referenced node belongs too