From: <tom...@jb...> - 2005-05-11 16:22:01
|
The port that ejb3 uses is defined by the org.jboss.remoting.transport.Connector configuration. In ejb3, looks like this is 3873. You can double check by looking for the jboss-service.xml in your ejb3 distro and seeing what it is set to within that. View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3877360#3877360 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3877360 |
From: mhaerdi <nu...@jb...> - 2005-05-13 07:05:20
|
with port 3873 opened, i get still the same error... (after some minutes) the port is defined in jboss-service.xml in the deployed directory ejb3.deployer/META-INF but not in conf/jboss-service.xml maybe i have to replace the ip in "socket://0.0.0.0:3873" by the server ip? i don't have to forward ports in the firewall on the client side, do i? "tom...@jb..." wrote : The port that ejb3 uses is defined by the org.jboss.remoting.transport.Connector configuration. In ejb3, looks like this is 3873. You can double check by looking for the jboss-service.xml in your ejb3 distro and seeing what it is set to within that. View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3877584#3877584 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3877584 |
From: <tom...@jb...> - 2005-05-13 14:44:48
|
Since the ip is 0.0.0.0, the server will just bind to its local host and use that ip as the address it tells clients to connect to. This is probably something like 192.168.1.1. The client, which is outside the firewall, probably does not access the server machine via the previous ip, but via some external ip (i.e. 56.23.35.2). Since the server does not know explicitly what this ip is, it can not tell the client to use this ip. You can change the address that the client tried to connect to the server on by changing the configuration (see http://wiki.jboss.org/wiki/Wiki.jsp?page=Remoting_Transports_Configuration). View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3877673#3877673 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3877673 |
From: mhaerdi <nu...@jb...> - 2005-05-14 10:04:29
|
still the same error... in the tcp/udp traffic on the client side i found at least one udp addressed to the server's internal address (192.168.x.x) according to http://wiki.jboss.org/wiki/Wiki.jsp?page=Remoting_Transports_Configuration, I changed the file jboss-service.xml in \jboss-4.0.2\server\all\deploy\ejb3.deployer\META-INF to: <?xml version="1.0" encoding="UTF-8"?> | <server> | <mbean code="org.jboss.ejb3.EJB3Deployer" name="jboss.ejb3:service=EJB3Deployer"> | <depends>jboss.aop:service=AspectDeployer</depends> | </mbean> | <mbean code="org.jboss.remoting.transport.Connector" | xmbean-dd="org/jboss/remoting/transport/Connector.xml" | name="jboss.remoting:type=Connector,transport=socket3873,handler=ejb3"> | <depends>jboss.aop:service=AspectDeployer</depends> | <!--attribute name="InvokerLocator">socket://192.168.123.1:3873</attribute> | <attribute name="Configuration"> | <handlers> | <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler> | </handlers> | </attribute--> | <attribute name="Configuration"> | <config> | <invoker transport="socket"> | <attribute name="numAcceptThreads">1</attribute> | <attribute name="maxPoolSize">303</attribute> | <attribute name="clientMaxPoolSize">304</attribute> | <attribute name="socketTimeout">10000</attribute> | <attribute name="serverBindAddress">192.168.123.1</attribute> | <attribute name="serverBindPort">3873</attribute> | <attribute name="clientConnectAddress">212.254.183.234</attribute> | <attribute name="clientConnectPort">3873</attribute> | <attribute name="enableTcpNoDelay" isParam="true">false</attribute> | <attribute name="backlog">200</attribute> | </invoker> | <handlers> | <!--handler subsystem="mock">org.jboss.remoting.transport.mock.MockServerInvocationHandler</handler--> | <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler> | </handlers> | </config> | </attribute> | </mbean> | </server> 192.168.123.1 is the internal address of the server in the lan 212.254.183.234 is the external address of the server (firewall wan-ip) i still start jboss with run.bat -c all -Djava.rmi.server.hostname=212.254.183.234 -Djava.rmi.server.useLocalHostname=false The client connects with java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces java.naming.provider.url=jnp://212.254.183.234:1099 what is wrong/missing? "tom...@jb..." wrote : Since the ip is 0.0.0.0, the server will just bind to its local host and use that ip as the address it tells clients to connect to. This is probably something like 192.168.1.1. The client, which is outside the firewall, probably does not access the server machine via the previous ip, but via some external ip (i.e. 56.23.35.2). Since the server does not know explicitly what this ip is, it can not tell the client to use this ip. You can change the address that the client tried to connect to the server on by changing the configuration (see http://wiki.jboss.org/wiki/Wiki.jsp?page=Remoting_Transports_Configuration). | | View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3877744#3877744 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3877744 |
From: mhaerdi <nu...@jb...> - 2005-05-18 21:29:46
|
up View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3878277#3878277 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3878277 |
From: jherrero <nu...@jb...> - 2005-06-03 10:29:14
|
I have the same problem. In a local network everything runs ok, but when the server is behind a firewall, the client can not connect. What files and configutrations do I have to change? All ports are openned (80, 1099,8080,4444,1098,4445,8009,8083,8092,8093) in the firewall Thanks for the help Pepe View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3880120#3880120 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3880120 |
From: mhaerdi <nu...@jb...> - 2005-06-05 15:21:57
|
still waiting for help / solution "jherrero" wrote : I have the same problem. In a local network everything runs ok, but when the server is behind a firewall, the client can not connect. | | What files and configutrations do I have to change? | | All ports are openned (80, 1099,8080,4444,1098,4445,8009,8083,8092,8093) in the firewall | | Thanks for the help | Pepe View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3880333#3880333 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3880333 |
From: <tom...@jb...> - 2005-06-06 20:38:02
|
You will also need to add the following annotation to your bean: | @RemoteBinding(clientBindUrl="socket://[host]:[port]") | So an example from the ejb3 tutorial would be: | ... | @Stateful | @RemoteBinding(clientBindUrl="socket://66.56.72.34:3873") | public class ShoppingCartBean implements ShoppingCart, Serializable | { | ... | where the external address for my server is 66.56.72.34. In a future release of ejb3, this should not be required and should pick up the proper locator url as specified in the server (via the jboss-service.xml). However, overriding the bind information for the client will always be allowed via the RemoteBinding annotation (if have a particular need for this). View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3880515#3880515 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3880515 |
From: mhaerdi <nu...@jb...> - 2005-06-07 11:41:10
|
it works! thanks! View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3880604#3880604 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3880604 |
From: bendis <nu...@jb...> - 2005-06-27 19:08:54
|
Hi! @RemoteBinding annotation solves this problem, but IMHO very badly. IP addresses, ports etc. should *not* be directly in the Java code of beans! What if I move some beans to JBoss behind firewall? What if I change the port number? I must edit and recompile *every* EJB. Specifying the adrress using this annotation is like hard-coding JDBC URLs directly into Java code! This information should be stored somewhere in the JBoss configuration... And it is - the clientConnectAddress and clientConnectPort attributes in ejb3.deployer/META-INF/jboss-service.xml (see the post above). But EJB3.0 silently ignores this information and uses hard-coded default socket://0.0.0.0:3873 - unless specified by @RemoteBinding. My opinion is that @RemoteBinding annotation should have no clientBindUrl attribute. Instead, there should be some attribute which would refer to some specific org.jboss.remoting.transport.Connector MBean configuration. What is your opinion? I consider @RemoteBinding.clientBindUrl as a serious design flaw - should I file a bug? Regards, Bendis View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3882887#3882887 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3882887 |
From: <tom...@jb...> - 2005-06-27 20:48:46
|
I have talked with Bill (ejb3 lead) via e-mail and we both agree that should be made to use the locator uri from the connector specified in the service xml if not defined via the annotation. Just forgot to open a jira issue at that point in time, but just did (EJBTHREE-204). View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3882901#3882901 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3882901 |