-
1. Re: access to tomcat jars for remoting
starksm64 Apr 13, 2006 1:37 AM (in response to tom.elrod)Remoting cannot be deployed this way. The depends on jboss.remoting:service=Connector,transport=http from the conf/jboss-service.xml is backwards. It should be that the http invoker depends on the remoting core. Why does this dependency exist?
-
2. Re: access to tomcat jars for remoting
tom.elrod Apr 14, 2006 12:31 AM (in response to tom.elrod)Not sure I understand. In jboss-service.xml, jboss:service=invoker,type=unified depends on jboss.remoting:service=Connector,transport=http (so unified invoker depends on remoting connector).
Are you saying unified invoker and the remoting connector should not be defined in jboss-service.xml? -
3. Re: access to tomcat jars for remoting
starksm64 Apr 14, 2006 12:37 AM (in response to tom.elrod)The jboss.remoting:service=Connector,transport=http should not be since its unusable without its associated war, correct? The legacy http invoker is deployed as a sar with a nested war for this reason.
-
4. Re: access to tomcat jars for remoting
tom.elrod Apr 14, 2006 1:58 AM (in response to tom.elrod)ok, understand now. So the http transport, which depends on tomcat jars, is pure http server and does not require war (or web container). It is puer standalone. The servlet transport does require the war and a web container (but not tomcat jars directly).
-
5. Re: access to tomcat jars for remoting
tom.elrod Apr 14, 2006 1:18 PM (in response to tom.elrod)Guess best way to put it is depends structure is:
unifiedinvoker --> remoting(http) --> tomat jars
Problem is tomcat jars are there, just within a sar, so config/jboss-service.xml is just being loaded before the tomcat sar.
One way to make this work, is to leave the UnifiedInvoker declaration in the jboss-service.xml, but move the Connector config to a separate remoting-service.xml that lives in the delopy directory. This will work, but then makes somewhat difficult to follow from config standpoint (meaning unified invoker is going to depend on a service that lives in another service file). The other option is to just document that if want http remoting trnansport, will have to do above mentioned manually (but probably even more difficult for user, but more of an edge case than the default of using socket transport). -
6. Re: access to tomcat jars for remoting
starksm64 Apr 14, 2006 1:26 PM (in response to tom.elrod)I don't want anything different than what I have to do with the installer, so inclusion of anything in jboss-service.xml that has jars outside of the lib directory won't work. Anything requiring editing of files is bad. Why even have anything in the conf/jboss-service.xml? Deploy the unified invoker as a sar in deploy.
-
7. Re: access to tomcat jars for remoting
tom.elrod Apr 14, 2006 1:36 PM (in response to tom.elrod)Using a unified invoker sar will work (and is probalby best option all around). Assume will be ok to *not* include the tomcat jars within the sar, was would expect them in the tomcat sar, or is that a bad assumption to make?
Also think this would be good to make the same changes in HEAD so uses a sar instead of the jboss-service.xml, which is is today. -
8. Re: access to tomcat jars for remoting
starksm64 Apr 14, 2006 1:45 PM (in response to tom.elrod)Right, its not ok to pull in the jars from other services. We need our services to be canonical deployments with proper dependencies so they can be used in the installer, testsuite configs and default build. Yes, update head to pull the invokers out of jboss-service.xml.
-
9. Re: access to tomcat jars for remoting
tom.elrod Apr 14, 2006 1:56 PM (in response to tom.elrod)Ok, so if I read it correctly, the unifiedinvoker.sar should include all the tomcat jars neeed by the remoting http transport.
Also, just so is known, the 2.2.0 (Bluto) release of remoting this summer will have all of the implementations broken out into different build artifacts, so will have core remoting api in one binary, then if want a particular transport, it will have its own binaries as well. This should make this whole process easier in that won't have to have a bloated unifiedinvoker.sar with all the transports' thirdparty libs bundled by default. -
10. Re: access to tomcat jars for remoting
starksm64 Apr 14, 2006 3:04 PM (in response to tom.elrod)Negative on the tomcat jars. Canonical means that the service only provides the jars it sources. The only place tomcat jars should exist is in the tomcat sar.
-
11. Re: access to tomcat jars for remoting
tom.elrod Apr 14, 2006 3:16 PM (in response to tom.elrod)ok. just read
Right, its not ok to pull in the jars from other services
as not ok to link with them, so would need to be bundled. All is clear now. Thanks. -
12. Re: access to tomcat jars for remoting
tom.elrod Apr 17, 2006 10:58 AM (in response to tom.elrod)One other problem Dimitris just alerted me to, which is for ejb3 deployer. It starts before tomcat sar, so it is going to have the same problem (with our without unifiedinvoker.sar being there).
-
13. Re: access to tomcat jars for remoting
bill.burke Apr 17, 2006 11:15 AM (in response to tom.elrod)ejb3 does not care about the remoting transport. The way it works is by URL string. It does no communication with the jboss remoting layer. The JBoss remoting layer is responsible for forwarding requests to the EJB3 handler.
So, what I'm saying is that so what if the deployer is deployed before tomcat? -
14. Re: access to tomcat jars for remoting
tom.elrod Apr 17, 2006 11:25 AM (in response to tom.elrod)If you set the Connector within default/deploy/ejb3.deployer/META-INF/jboss-service.xml to use http transport, then start the server, it will fail (due to not being able to find classes that live within the tomcat jars). For example, change Connector config to:
<mbean code="org.jboss.remoting.transport.Connector" xmbean-dd="org/jboss/remoting/transport/Connector.xml" name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3"> <depends>jboss.aop:service=AspectDeployer</depends> <attribute name="InvokerLocator">http://localhost:8888</attribute> <attribute name="Configuration"> <config> <handlers> <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler> </handlers> </config> </attribute> </mbean>
So, there has to be some way to provide visibility to these jars when the ejb3 deployer service starts.