You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by pa...@targetgroup.net on 2006/06/08 13:03:15 UTC

Changing application calsspath to include directory

Hi

I have an EAR I want to deploy multiple times, each time with a different 
classpath. The reason for this is I want test and live versions, and in 
each case the application loads a property file from the classpath to 
configure things like database server names, web service endpoints and so 
on.

I have read the documentation about how to add jars in at deployment time 
via entries in geronimo-application.xml, but I don't want to add jars, I 
want to add directories.

Can anyone help ?

Target
www.targetgroup.net

**********************************************************************
DISCLAIMER.
This message is intended only for the use of the Addressee and may
contain information that is PRIVILEGED and CONFIDENTIAL. 
If you are not the intended recipient you must not copy, 
distribute or take any action or reliance upon it. 
The content of this message may also contain personal 
views of an employee of this company and does
not necessarily represent the view of the company.
**********************************************************************
This message has been scanned by Norton Anti-Virus. 
It has also been scanned by MAILsweeper to enforce our e-mail 
policy. If you have any concerns or comments about the content 
of this message, please  e-mail support@targetgroup.net.
**********************************************************************



_____________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by jklcom99 <je...@yahoo.com>.
How to create the config file?  Can you show me an example?


ammulder wrote:
> 
> I'm not sure you can do this in 1.0.  In 1.1, each EAR could deploy a
> private copy of the SharedLib GBean and point it to the directory you
> want to add as part of its "classesDirs" property (which can be one
> dir or a comma-separated list of dirs).
> 
> <gbean name="MyApp1SharedLib"
>     class="org.apache.geronimo.system.sharedlib.SharedLib">
>     <attribute name="classesDirs">/path/to/properties/dir</attribute>
>     <reference name="ServerInfo">
>         <name>ServerInfo</name>
>     </reference>
> </gbean>
> 
> Still, the more portable solution would be to put the config files in
> a JAR and put the JAR on the classpath somehow (e.g. add it to an EJB
> JAR's Manifest Class-Path or put it in a WAR's WEB-INF/lib).
> 
> Thanks,
>     Aaron
> 
> On 6/8/06, paul.newport@targetgroup.net <pa...@targetgroup.net>
> wrote:
>>
>> Hi
>>
>> I have an EAR I want to deploy multiple times, each time with a different
>> classpath. The reason for this is I want test and live versions, and in
>> each
>> case the application loads a property file from the classpath to
>> configure
>> things like database server names, web service endpoints and so on.
>>
>> I have read the documentation about how to add jars in at deployment time
>> via entries in geronimo-application.xml, but I don't want to add jars, I
>> want to add directories.
>>
>> Can anyone help ?
>>
>> Target
>>
>> www.targetgroup.net
>>
>>
>>
>> **********************************************************************
>>
>> DISCLAIMER.
>>
>> This message is intended only for the use of the Addressee and may
>>
>> contain information that is PRIVILEGED and CONFIDENTIAL.
>>
>> If you are not the intended recipient you must not copy,
>>
>> distribute or take any action or reliance upon it.
>>
>> The content of this message may also contain personal
>>
>> views of an employee of this company and does
>>
>> not necessarily represent the view of the company.
>>
>> **********************************************************************
>>
>> This message has been scanned by Norton Anti-Virus.
>>
>> It has also been scanned by MAILsweeper to enforce our e-mail
>>
>> policy. If you have any concerns or comments about the content
>>
>> of this message, please e-mail support@targetgroup.net.
>>
>> **********************************************************************
>> _____________________________________________________________________
>>  This email has been scanned for all viruses by the MessageLabs Email
>>  Security System. For more information on a proactive email security
>>  service working around the clock, around the globe, visit
>>  http://www.messagelabs.com
>>
> 
> 

-- 
View this message in context: http://www.nabble.com/Changing-application-calsspath-to-include-directory-tp4770139s134p19541064.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.


Re: Changing application calsspath to include directory

Posted by pa...@targetgroup.net.
"What JARs (like maybe Axis) are being included in your RAD built project?
"


For the web service war file, the following:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
        <classpathentry kind="src" path="JavaSource"/>
        <classpathentry kind="con" 
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/WebSphere 
v6 JRE"/>
        <classpathentry kind="con" 
path="com.ibm.wtp.server.java.core.container/com.ibm.ws.ast.st.runtime.core.runtimeTarget.v60/was.base.v6"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/axis.jar"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/saaj.jar"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/commons-logging.jar"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/wsdl4j.jar"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/jaxrpc.jar"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/log4j-1.2.4.jar"/>
        <classpathentry exported="true" kind="src" path="/SV2Model"/>
        <classpathentry exported="true" kind="src" 
path="/TargetCommonCode"/>
        <classpathentry kind="lib" 
path="WebContent/WEB-INF/lib/commons-discovery.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/acegi-security-1.0.0-RC2.jar"/>
        <classpathentry exported="true" 
sourcepath="/SV2Ear/antlr-2.7.4.jar" kind="lib" 
path="/SV2Ear/antlr-2.7.4.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/castor-1.0-xml.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/commons-codec-1.3.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/commons-collections-3.1.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/commons-dbcp-1.2.1.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/commons-lang-2.1.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/commons-logging-1.0.4.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/ehcache-1.1.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/hibernate3.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/jta.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/log4j-1.2.13.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/mysql-connector-java-3.1.10-bin.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/spring.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/cglib-2.1.3.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/commons-pool-1.3.jar"/>
        <classpathentry exported="true" kind="lib" 
path="/SV2Ear/dom4j-1.6.1.jar"/>
        <classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
</classpath>

Target
www.targetgroup.net

**********************************************************************
DISCLAIMER.
This message is intended only for the use of the Addressee and may
contain information that is PRIVILEGED and CONFIDENTIAL. 
If you are not the intended recipient you must not copy, 
distribute or take any action or reliance upon it. 
The content of this message may also contain personal 
views of an employee of this company and does
not necessarily represent the view of the company.
**********************************************************************
This message has been scanned by Norton Anti-Virus. 
It has also been scanned by MAILsweeper to enforce our e-mail 
policy. If you have any concerns or comments about the content 
of this message, please  e-mail support@targetgroup.net.
**********************************************************************



_____________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by Donald Woods <dr...@yahoo.com>.
What JARs (like maybe Axis) are being included in your RAD built project?


paul.newport@targetgroup.net wrote:
> 
> "First, putting properties files in a JAR and adding a dependency on
> that JAR should work, so there must be some problem with either the
> configuration or the code that you're trying to use."
> 
> I knocked up a test application that did just this and it works fine in 
> Geronimo so I will have to go back and revisit my code in the real 
> application. Thanks for your help on this - much appreciated as I 
> generally use WAS and am a bit of a Geronimo newbie.
> 
> As far as the 1.1 problem goes, yes it does have a web service in it, 
> generated from a RAD 6 wizard. The JDK is
> 
> [java.vm.vendor]      = Sun Microsystems Inc.
> [java.vm.version]     = 1.4.2_04-b05
> 
> Target
> 
> www.targetgroup.net
> 
> **********************************************************************
> 
> DISCLAIMER.
> 
> This message is intended only for the use of the Addressee and may
> 
> contain information that is PRIVILEGED and CONFIDENTIAL.
> 
> If you are not the intended recipient you must not copy,
> 
> distribute or take any action or reliance upon it.
> 
> The content of this message may also contain personal
> 
> views of an employee of this company and does
> 
> not necessarily represent the view of the company.
> 
> **********************************************************************
> 
> This message has been scanned by Norton Anti-Virus.
> 
> It has also been scanned by MAILsweeper to enforce our e-mail
> 
> policy. If you have any concerns or comments about the content
> 
> of this message, please e-mail support@targetgroup.net.
> 
> **********************************************************************
> 
> 
> _____________________________________________________________________
> This email has been scanned for all viruses by the MessageLabs Email
> Security System. For more information on a proactive email security
> service working around the clock, around the globe, visit
> http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by pa...@targetgroup.net.
"First, putting properties files in a JAR and adding a dependency on
that JAR should work, so there must be some problem with either the
configuration or the code that you're trying to use."

I knocked up a test application that did just this and it works fine in 
Geronimo so I will have to go back and revisit my code in the real 
application. Thanks for your help on this - much appreciated as I 
generally use WAS and am a bit of a Geronimo newbie.

As far as the 1.1 problem goes, yes it does have a web service in it, 
generated from a RAD 6 wizard. The JDK is 

[java.vm.vendor]      = Sun Microsystems Inc.
[java.vm.version]     = 1.4.2_04-b05


Target
www.targetgroup.net

**********************************************************************
DISCLAIMER.
This message is intended only for the use of the Addressee and may
contain information that is PRIVILEGED and CONFIDENTIAL. 
If you are not the intended recipient you must not copy, 
distribute or take any action or reliance upon it. 
The content of this message may also contain personal 
views of an employee of this company and does
not necessarily represent the view of the company.
**********************************************************************
This message has been scanned by Norton Anti-Virus. 
It has also been scanned by MAILsweeper to enforce our e-mail 
policy. If you have any concerns or comments about the content 
of this message, please  e-mail support@targetgroup.net.
**********************************************************************



_____________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
OK, there are several different issues here.

First, putting properties files in a JAR and adding a dependency on
that JAR should work, so there must be some problem with either the
configuration or the code that you're trying to use.  If you'd like to
pursue that, can you post your code and JAR content and JAR file
location in more detail?  We may have to get this working in order to
be sure you're using the right approach to try it exploded.

Then we have the 1.1 problem , which seems to amount to:

Caused by: java.io.IOException: Unable to deserialize GBeanData
default/Application_ID/1149844708888/car?J2EEApplication=default/Application_ID/1149844708888/car,j2eeType=WebModule,name=TPRWeb.war,
attribute: componentContext
        at org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:239)
        ... 65 more
Caused by: java.io.InvalidClassException:
org.apache.axis.description.OperationDesc; class invalid for
deserialization
        at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:487)
        at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521)
        at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626)
        ...

What JVM are you using?  Did you do anything other than deploy your
EAR?  I assume the EAR involves web services somehow?

Thanks,
    Aaron

On 6/9/06, paul.newport@targetgroup.net <pa...@targetgroup.net> wrote:
>
> As an alternative tack I have downloaded the latest 1.1 release candidate
> (geronimo-1.1-20060607) so that I could try out the suggested
>
>
> org.apache.geronimo.system.sharedlib.SharedLib
>
>  method of overriding the classpath.
>
> Before I even wrote a geronimo application deployment descriptor, I tried
> deploying my raw Ear, and got this, so have not got any further:
>
> 10:18:29,028 WARN  [JettyModuleBuilder] Web application SV2WebServices.war
> does not contain a WEB-INF/geronimo-web.xml deployment plan.  This may or
> may not be a problem, depending on whether you have things like resource
> references that need to be resolved.  You can also give the deployer a
> separate deployment plan file on the command line.
> 10:18:29,341 WARN  [JettyModuleBuilder] Web application TPRWeb.war does not
> contain a WEB-INF/geronimo-web.xml deployment plan.  This may or may not be
> a problem, depending on whether you have things like resource references
> that need to be resolved.  You can also give the deployer a separate
> deployment plan file on the command line.
> 10:18:32,606 WARN  [HeavyweightTypeInfoBuilder] No soap array info for
> schematype: T=Item@http://xml.apache.org/xml-soap
> 10:18:33,403 ERROR [GBeanInstanceState] Error while starting; GBean is now
> in the FAILED state:
> abstractName="default/Application_ID/1149844708888/car?configurationName=default/Application_ID/1149844708888/car"
> org.apache.geronimo.kernel.config.InvalidConfigException:
> Unable to deserialize GBeanState
>         at
> org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(SerializedGBeanState.java:120)
>         at
> org.apache.geronimo.kernel.config.SerializedGBeanState.getGBeans(SerializedGBeanState.java:65)
>         at
> org.apache.geronimo.kernel.config.ConfigurationData.getGBeans(ConfigurationData.java:171)
>         at
> org.apache.geronimo.kernel.config.Configuration.<init>(Configuration.java:277)
>         at
> org.apache.geronimo.kernel.config.Configuration.<init>(Configuration.java:295)
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at
> java.lang.reflect.Constructor.newInstance(Constructor.java:274)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:933)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:267)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:526)
>         at
> org.apache.geronimo.kernel.basic.BasicKernel.startGBean(BasicKernel.java:361)
>         at
> org.apache.geronimo.kernel.config.KernelConfigurationManager.load(KernelConfigurationManager.java:161)
>         at
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:292)
>         at
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:260)
>         at
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:235)
>         at
> org.apache.geronimo.kernel.config.KernelConfigurationManager.loadConfiguration(KernelConfigurationManager.java:112)
>         at
> org.apache.geronimo.kernel.config.KernelConfigurationManager$$FastClassByCGLIB$$b117102f.invoke(<generated>)
>         at
> net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>         at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
>         at
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>         at
> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>         at
> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
>         at
> net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>         at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
>         at
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>         at
> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168)
>         at
> mx4j.server.interceptor.InvokerMBeanServerInterceptor.invoke(InvokerMBeanServerInterceptor.java:221)
>         at
> mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:120)
>         at
> mx4j.server.interceptor.SecurityMBeanServerInterceptor.invoke(SecurityMBeanServerInterceptor.java:84)
>         at
> mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:120)
>         at
> mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:120)
>         at
> mx4j.server.interceptor.ContextClassLoaderMBeanServerInterceptor.invoke(ContextClassLoaderMBeanServerInterceptor.java:203)
>         at
> mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1043)
>         at
> mx4j.remote.rmi.RMIConnectionInvoker.invoke(RMIConnectionInvoker.java:219)
>         at
> sun.reflect.GeneratedMethodAccessor159.invoke(Unknown
> Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:324)
>         at
> mx4j.remote.rmi.RMIConnectionProxy.invoke(RMIConnectionProxy.java:34)
>         at
> mx4j.remote.rmi.RMIConnectionSubjectInvoker.chain(RMIConnectionSubjectInvoker.java:99)
>         at
> mx4j.remote.rmi.RMIConnectionSubjectInvoker.access$000(RMIConnectionSubjectInvoker.java:31)
>         at
> mx4j.remote.rmi.RMIConnectionSubjectInvoker$1.run(RMIConnectionSubjectInvoker.java:90)
>         at
> java.security.AccessController.doPrivileged(Native Method)
>         at
> javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
>         at
> mx4j.remote.MX4JRemoteUtils.subjectInvoke(MX4JRemoteUtils.java:163)
>         at
> mx4j.remote.rmi.RMIConnectionSubjectInvoker.subjectInvoke(RMIConnectionSubjectInvoker.java:86)
>         at
> mx4j.remote.rmi.RMIConnectionSubjectInvoker.invoke(RMIConnectionSubjectInvoker.java:80)
>         at $Proxy0.invoke(Unknown Source)
>         at
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:221)
>         at
> sun.reflect.GeneratedMethodAccessor159.invoke(Unknown
> Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:324)
>         at
> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
>         at
> sun.rmi.transport.Transport$1.run(Transport.java:148)
>         at
> java.security.AccessController.doPrivileged(Native Method)
>         at
> sun.rmi.transport.Transport.serviceCall(Transport.java:144)
>         at
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
>         at
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
>         at java.lang.Thread.run(Thread.java:534)
> Caused by: java.io.IOException: Unable to deserialize GBeanData
> default/Application_ID/1149844708888/car?J2EEApplication=default/Application_ID/1149844708888/car,j2eeType=WebModule,name=TPRWeb.war
>         at
> org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:266)
>         at
> org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(SerializedGBeanState.java:111)
>         ... 64 more
> Caused by: java.io.IOException: Unable to deserialize GBeanData
> default/Application_ID/1149844708888/car?J2EEApplication=default/Application_ID/1149844708888/car,j2eeType=WebModule,name=TPRWeb.war,
> attribute: componentContext
>         at
> org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:239)
>         ... 65 more
> Caused by: java.io.InvalidClassException:
> org.apache.axis.description.OperationDesc; class invalid
> for deserialization
>         at
> java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:487)
>         at
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521)
>         at
> java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
>         at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
>         at
> java.io.ObjectInputStream.readArray(ObjectInputStream.java:1578)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1271)
>         at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
>         at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
>         at java.util.HashMap.readObject(HashMap.java:1006)
>         at
> sun.reflect.GeneratedMethodAccessor163.invoke(Unknown
> Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:324)
>         at
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1746)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
>         at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
>         at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
>         at java.util.HashMap.readObject(HashMap.java:1006)
>         at
> sun.reflect.GeneratedMethodAccessor163.invoke(Unknown
> Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:324)
>         at
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1746)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
>         at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
>         at
> org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:235)
>         ... 65 more
>
>
> Target
>
> www.targetgroup.net
>
>
>
> **********************************************************************
>
> DISCLAIMER.
>
> This message is intended only for the use of the Addressee and may
>
> contain information that is PRIVILEGED and CONFIDENTIAL.
>
> If you are not the intended recipient you must not copy,
>
> distribute or take any action or reliance upon it.
>
> The content of this message may also contain personal
>
> views of an employee of this company and does
>
> not necessarily represent the view of the company.
>
> **********************************************************************
>
> This message has been scanned by Norton Anti-Virus.
>
> It has also been scanned by MAILsweeper to enforce our e-mail
>
> policy. If you have any concerns or comments about the content
>
> of this message, please e-mail support@targetgroup.net.
>
> **********************************************************************
> _____________________________________________________________________
>  This email has been scanned for all viruses by the MessageLabs Email
>  Security System. For more information on a proactive email security
>  service working around the clock, around the globe, visit
>  http://www.messagelabs.com
>

Re: Changing application calsspath to include directory

Posted by pa...@targetgroup.net.
>URI.  You could try creating the "artifact" as a directory
>(repository/test/jars/foo-1.1.jar/ ) and then using the proper URI
>syntax (test/foo/1.1/jar) to refer to it and see what happens.  That
>would be interesting.

That approach didn't work, nor did sticking the properties file in a (foo) 
jar file and trying to use that.


>If that doesn't work and you must use Geronimo 1.0, try back-porting
>the shared lib GBean.  You'll need something like that.

That sounds a bit ambitious for me! An alternative would be for me to 
deploy the properties file into Geronimo via JNDI and access it that way. 
Do you have any pointers on how to do that ?

When is 1.1 slated for release by the way ?

Target
www.targetgroup.net

**********************************************************************
DISCLAIMER.
This message is intended only for the use of the Addressee and may
contain information that is PRIVILEGED and CONFIDENTIAL. 
If you are not the intended recipient you must not copy, 
distribute or take any action or reliance upon it. 
The content of this message may also contain personal 
views of an employee of this company and does
not necessarily represent the view of the company.
**********************************************************************
This message has been scanned by Norton Anti-Virus. 
It has also been scanned by MAILsweeper to enforce our e-mail 
policy. If you have any concerns or comments about the content 
of this message, please  e-mail support@targetgroup.net.
**********************************************************************



_____________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by pa...@targetgroup.net.
As an alternative tack I have downloaded the latest 1.1 release candidate 
(geronimo-1.1-20060607) so that I could try out the suggested 

org.apache.geronimo.system.sharedlib.SharedLib

method of overriding the classpath.

Before I even wrote a geronimo application deployment descriptor, I tried 
deploying my raw Ear, and got this, so have not got any further:

10:18:29,028 WARN  [JettyModuleBuilder] Web application SV2WebServices.war 
does not contain a WEB-INF/geronimo-web.xml deployment plan.  This may or 
may not be a problem, depending on whether you have things like resource 
references that need to be resolved.  You can also give the deployer a 
separate deployment plan file on the command line.
10:18:29,341 WARN  [JettyModuleBuilder] Web application TPRWeb.war does 
not contain a WEB-INF/geronimo-web.xml deployment plan.  This may or may 
not be a problem, depending on whether you have things like resource 
references that need to be resolved.  You can also give the deployer a 
separate deployment plan file on the command line.
10:18:32,606 WARN  [HeavyweightTypeInfoBuilder] No soap array info for 
schematype: T=Item@http://xml.apache.org/xml-soap
10:18:33,403 ERROR [GBeanInstanceState] Error while starting; GBean is now 
in the FAILED state: 
abstractName="default/Application_ID/1149844708888/car?configurationName=default/Application_ID/1149844708888/car"
org.apache.geronimo.kernel.config.InvalidConfigException: Unable to 
deserialize GBeanState
        at 
org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(SerializedGBeanState.java:120)
        at 
org.apache.geronimo.kernel.config.SerializedGBeanState.getGBeans(SerializedGBeanState.java:65)
        at 
org.apache.geronimo.kernel.config.ConfigurationData.getGBeans(ConfigurationData.java:171)
        at 
org.apache.geronimo.kernel.config.Configuration.<init>(Configuration.java:277)
        at 
org.apache.geronimo.kernel.config.Configuration.<init>(Configuration.java:295)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:933)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:267)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:526)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.startGBean(BasicKernel.java:361)
        at 
org.apache.geronimo.kernel.config.KernelConfigurationManager.load(KernelConfigurationManager.java:161)
        at 
org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:292)
        at 
org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:260)
        at 
org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:235)
        at 
org.apache.geronimo.kernel.config.KernelConfigurationManager.loadConfiguration(KernelConfigurationManager.java:112)
        at 
org.apache.geronimo.kernel.config.KernelConfigurationManager$$FastClassByCGLIB$$b117102f.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
        at 
org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
        at 
org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
        at 
org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168)
        at 
mx4j.server.interceptor.InvokerMBeanServerInterceptor.invoke(InvokerMBeanServerInterceptor.java:221)
        at 
mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:120)
        at 
mx4j.server.interceptor.SecurityMBeanServerInterceptor.invoke(SecurityMBeanServerInterceptor.java:84)
        at 
mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:120)
        at 
mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:120)
        at 
mx4j.server.interceptor.ContextClassLoaderMBeanServerInterceptor.invoke(ContextClassLoaderMBeanServerInterceptor.java:203)
        at mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1043)
        at 
mx4j.remote.rmi.RMIConnectionInvoker.invoke(RMIConnectionInvoker.java:219)
        at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at 
mx4j.remote.rmi.RMIConnectionProxy.invoke(RMIConnectionProxy.java:34)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.chain(RMIConnectionSubjectInvoker.java:99)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.access$000(RMIConnectionSubjectInvoker.java:31)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker$1.run(RMIConnectionSubjectInvoker.java:90)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
        at 
mx4j.remote.MX4JRemoteUtils.subjectInvoke(MX4JRemoteUtils.java:163)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.subjectInvoke(RMIConnectionSubjectInvoker.java:86)
        at 
mx4j.remote.rmi.RMIConnectionSubjectInvoker.invoke(RMIConnectionSubjectInvoker.java:80)
        at $Proxy0.invoke(Unknown Source)
        at 
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:221)
        at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at 
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
        at sun.rmi.transport.Transport$1.run(Transport.java:148)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
        at java.lang.Thread.run(Thread.java:534)
Caused by: java.io.IOException: Unable to deserialize GBeanData 
default/Application_ID/1149844708888/car?J2EEApplication=default/Application_ID/1149844708888/car,j2eeType=WebModule,name=TPRWeb.war
        at 
org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:266)
        at 
org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(SerializedGBeanState.java:111)
        ... 64 more
Caused by: java.io.IOException: Unable to deserialize GBeanData 
default/Application_ID/1149844708888/car?J2EEApplication=default/Application_ID/1149844708888/car,j2eeType=WebModule,name=TPRWeb.war, 
attribute: componentContext
        at 
org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:239)
        ... 65 more
Caused by: java.io.InvalidClassException: 
org.apache.axis.description.OperationDesc; class invalid for 
deserialization
        at 
java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:487)
        at 
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521)
        at 
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
        at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
        at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
        at 
java.io.ObjectInputStream.readArray(ObjectInputStream.java:1578)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1271)
        at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
        at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
        at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
        at java.util.HashMap.readObject(HashMap.java:1006)
        at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at 
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
        at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1746)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
        at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
        at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
        at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
        at java.util.HashMap.readObject(HashMap.java:1006)
        at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at 
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
        at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1746)
        at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
        at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
        at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
        at 
org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:235)
        ... 65 more

Target
www.targetgroup.net

**********************************************************************
DISCLAIMER.
This message is intended only for the use of the Addressee and may
contain information that is PRIVILEGED and CONFIDENTIAL. 
If you are not the intended recipient you must not copy, 
distribute or take any action or reliance upon it. 
The content of this message may also contain personal 
views of an employee of this company and does
not necessarily represent the view of the company.
**********************************************************************
This message has been scanned by Norton Anti-Virus. 
It has also been scanned by MAILsweeper to enforce our e-mail 
policy. If you have any concerns or comments about the content 
of this message, please  e-mail support@targetgroup.net.
**********************************************************************



_____________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
What you're trying won't work -- the URI used in a dependency is a
Maven group/artifact/version/type URI not a file path or URL.  Well, I
guess I don't know for sure that it won't work if you use a correct
URI.  You could try creating the "artifact" as a directory
(repository/test/jars/foo-1.1.jar/ ) and then using the proper URI
syntax (test/foo/1.1/jar) to refer to it and see what happens.  That
would be interesting.

If that doesn't work and you must use Geronimo 1.0, try back-porting
the shared lib GBean.  You'll need something like that.

Thanks,
    Aaron

On 6/8/06, paul.newport@targetgroup.net <pa...@targetgroup.net> wrote:
>
> Hi
>
> I can't put the config files in a jar fil in the application as they have to
> be exteranlised and different for each deployment.
>
> I have got as far as this now where it can't find the file I am specifiy in
> in the repository:
>
> C:\Program
> Files\IBM\WebSphere\AppServerCommunityEdition1.1\bin>deploy
> --user sy
> stem --password manager deploy c:\sv2\test\geronimo-application.xml
> c:\TargetSel
> ect.ear
> Using GERONIMO_BASE:   C:\PROGRA~1\IBM\WEBSPH~3\APPSER~1.1
> Using GERONIMO_HOME:   C:\PROGRA~1\IBM\WEBSPH~3\APPSER~1.1
> Using GERONIMO_TMPDIR:
> C:\PROGRA~1\IBM\WEBSPH~3\APPSER~1.1\var\temp
> Using JRE_HOME:        C:\j2sdk1.4.2_04
>     Error: Unable to distribute TargetSelect.ear:
>
> org.apache.geronimo.kernel.repository.MissingDependencyException:
>     uri file://sv2/test/ not found in repository
>
>         uri file://sv2/test/ not found in repository
>
>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <application
>
> xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.0"
>
> xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.0"
>
> xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
>   configId="SV2Test"
>   application-name="TargetSelectVersion2 Test"
>   inverseClassloading="false">
>
>
>    <dependency>
>       <uri>file://sv2/test/</uri>
>     </dependency>
>
>   <module>
>     <web>TPRWeb.war</web>
>     <web-app
>
> xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.0"
>
> xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
>          configId="TPRWeb">
>
>          <context-root>TPRWebTest</context-root>
>
>     </web-app>
>   </module>
>
> </application>
>
>
> Target
>
> www.targetgroup.net
>
>
>
> **********************************************************************
>
> DISCLAIMER.
>
> This message is intended only for the use of the Addressee and may
>
> contain information that is PRIVILEGED and CONFIDENTIAL.
>
> If you are not the intended recipient you must not copy,
>
> distribute or take any action or reliance upon it.
>
> The content of this message may also contain personal
>
> views of an employee of this company and does
>
> not necessarily represent the view of the company.
>
> **********************************************************************
>
> This message has been scanned by Norton Anti-Virus.
>
> It has also been scanned by MAILsweeper to enforce our e-mail
>
> policy. If you have any concerns or comments about the content
>
> of this message, please e-mail support@targetgroup.net.
>
> **********************************************************************
> _____________________________________________________________________
>  This email has been scanned for all viruses by the MessageLabs Email
>  Security System. For more information on a proactive email security
>  service working around the clock, around the globe, visit
>  http://www.messagelabs.com
>

Re: Changing application calsspath to include directory

Posted by pa...@targetgroup.net.
Hi

I can't put the config files in a jar fil in the application as they have 
to be exteranlised and different for each deployment.

I have got as far as this now where it can't find the file I am specifiy 
in in the repository:

C:\Program Files\IBM\WebSphere\AppServerCommunityEdition1.1\bin>deploy 
--user sy
stem --password manager deploy c:\sv2\test\geronimo-application.xml 
c:\TargetSel
ect.ear
Using GERONIMO_BASE:   C:\PROGRA~1\IBM\WEBSPH~3\APPSER~1.1
Using GERONIMO_HOME:   C:\PROGRA~1\IBM\WEBSPH~3\APPSER~1.1
Using GERONIMO_TMPDIR: C:\PROGRA~1\IBM\WEBSPH~3\APPSER~1.1\var\temp
Using JRE_HOME:        C:\j2sdk1.4.2_04
    Error: Unable to distribute TargetSelect.ear:
    org.apache.geronimo.kernel.repository.MissingDependencyException:
    uri file://sv2/test/ not found in repository

        uri file://sv2/test/ not found in repository



<?xml version="1.0" encoding="UTF-8"?>
<application
  xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.0"
  xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.0"
  xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
  configId="SV2Test"
  application-name="TargetSelectVersion2 Test"
  inverseClassloading="false">
 
 
   <dependency>
      <uri>file://sv2/test/</uri>
    </dependency>
 
  <module>
    <web>TPRWeb.war</web>
    <web-app
         xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.0"
         xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
         configId="TPRWeb">
 
         <context-root>TPRWebTest</context-root>
 
    </web-app>
  </module>
 
</application>

Target
www.targetgroup.net

**********************************************************************
DISCLAIMER.
This message is intended only for the use of the Addressee and may
contain information that is PRIVILEGED and CONFIDENTIAL. 
If you are not the intended recipient you must not copy, 
distribute or take any action or reliance upon it. 
The content of this message may also contain personal 
views of an employee of this company and does
not necessarily represent the view of the company.
**********************************************************************
This message has been scanned by Norton Anti-Virus. 
It has also been scanned by MAILsweeper to enforce our e-mail 
policy. If you have any concerns or comments about the content 
of this message, please  e-mail support@targetgroup.net.
**********************************************************************



_____________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com

Re: Changing application calsspath to include directory

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
I'm not sure you can do this in 1.0.  In 1.1, each EAR could deploy a
private copy of the SharedLib GBean and point it to the directory you
want to add as part of its "classesDirs" property (which can be one
dir or a comma-separated list of dirs).

<gbean name="MyApp1SharedLib"
    class="org.apache.geronimo.system.sharedlib.SharedLib">
    <attribute name="classesDirs">/path/to/properties/dir</attribute>
    <reference name="ServerInfo">
        <name>ServerInfo</name>
    </reference>
</gbean>

Still, the more portable solution would be to put the config files in
a JAR and put the JAR on the classpath somehow (e.g. add it to an EJB
JAR's Manifest Class-Path or put it in a WAR's WEB-INF/lib).

Thanks,
    Aaron

On 6/8/06, paul.newport@targetgroup.net <pa...@targetgroup.net> wrote:
>
> Hi
>
> I have an EAR I want to deploy multiple times, each time with a different
> classpath. The reason for this is I want test and live versions, and in each
> case the application loads a property file from the classpath to configure
> things like database server names, web service endpoints and so on.
>
> I have read the documentation about how to add jars in at deployment time
> via entries in geronimo-application.xml, but I don't want to add jars, I
> want to add directories.
>
> Can anyone help ?
>
> Target
>
> www.targetgroup.net
>
>
>
> **********************************************************************
>
> DISCLAIMER.
>
> This message is intended only for the use of the Addressee and may
>
> contain information that is PRIVILEGED and CONFIDENTIAL.
>
> If you are not the intended recipient you must not copy,
>
> distribute or take any action or reliance upon it.
>
> The content of this message may also contain personal
>
> views of an employee of this company and does
>
> not necessarily represent the view of the company.
>
> **********************************************************************
>
> This message has been scanned by Norton Anti-Virus.
>
> It has also been scanned by MAILsweeper to enforce our e-mail
>
> policy. If you have any concerns or comments about the content
>
> of this message, please e-mail support@targetgroup.net.
>
> **********************************************************************
> _____________________________________________________________________
>  This email has been scanned for all viruses by the MessageLabs Email
>  Security System. For more information on a proactive email security
>  service working around the clock, around the globe, visit
>  http://www.messagelabs.com
>