You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cayenne.apache.org by Gary Jarrel <ga...@gmail.com> on 2007/04/18 10:39:51 UTC

Cayenne with Apache James

Hi All!

Not sure if anyone has used Cayenne with James, so this maybe a stab
in the dark, but I've written a few mailets which utilize Cayenne for
some DB processing and as soon as I drop the Cayenne 2.0.2 jar
(no-dep) into my James directory under:
<instdir>/apps/james/SAR-INF/lib/ I get the following exception:

org.apache.avalon.phoenix.interfaces.DeploymentException: Bad
specification version format 'cayenne' in 'org.apache.cayenne'.
(Reason: java.lang.NumberFormatException: For input string: "cayenne")
        at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:379)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
        at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
        at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
        at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.avalon.phoenix.launcher.Main.startup(Main.java:128)
        at org.apache.avalon.phoenix.launcher.Main.main(Main.java:83)
Caused by: java.lang.IllegalArgumentException: Bad specification
version format 'cayenne' in 'org.apache.cayenne'. (Reason:
java.lang.NumberFormatException: For input string: "cayenne")
        at org.apache.avalon.excalibur.extension.Extension.<init>(Extension.java:444)
        at org.apache.avalon.excalibur.extension.Extension.getExtension(Extension.java:785)
        at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:241)
        at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:278)
        at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.getOptionalPackagesFor(SimpleLoaderResolver.java:313)
        at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.determineCompleteClasspath(SimpleLoaderResolver.java:233)
        at org.apache.avalon.phoenix.components.classloader.SarLoaderResolver.createClassLoader(SarLoaderResolver.java:191)
        at org.realityforge.classman.builder.LoaderBuilder.buildRegularClassLoader(LoaderBuilder.java:228)
        at org.realityforge.classman.builder.LoaderBuilder.processClassLoader(LoaderBuilder.java:126)
        at org.realityforge.classman.builder.LoaderBuilder.addAllClassLoaders(LoaderBuilder.java:71)
        at org.realityforge.classman.builder.LoaderBuilder.buildClassLoaders(LoaderBuilder.java:48)
        at org.apache.avalon.phoenix.components.classloader.DefaultClassLoaderManager.createClassLoaderSet(DefaultClassLoaderManager.java:233)
        at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:331)
        ... 14 more
rethrown from
java.lang.IllegalArgumentException: Bad specification version format
'cayenne' in 'org.apache.cayenne'. (Reason:
java.lang.NumberFormatException: For input string: "cayenne")
        at org.apache.avalon.excalibur.extension.Extension.<init>(Extension.java:444)
        at org.apache.avalon.excalibur.extension.Extension.getExtension(Extension.java:785)
        at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:241)
        at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:278)
        at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.getOptionalPackagesFor(SimpleLoaderResolver.java:313)
        at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.determineCompleteClasspath(SimpleLoaderResolver.java:233)
        at org.apache.avalon.phoenix.components.classloader.SarLoaderResolver.createClassLoader(SarLoaderResolver.java:191)
        at org.realityforge.classman.builder.LoaderBuilder.buildRegularClassLoader(LoaderBuilder.java:228)
        at org.realityforge.classman.builder.LoaderBuilder.processClassLoader(LoaderBuilder.java:126)
        at org.realityforge.classman.builder.LoaderBuilder.addAllClassLoaders(LoaderBuilder.java:71)
        at org.realityforge.classman.builder.LoaderBuilder.buildClassLoaders(LoaderBuilder.java:48)
        at org.apache.avalon.phoenix.components.classloader.DefaultClassLoaderManager.createClassLoaderSet(DefaultClassLoaderManager.java:233)
        at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:331)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
        at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
        at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
        at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
        at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.avalon.phoenix.launcher.Main.startup(Main.java:128)
        at org.apache.avalon.phoenix.launcher.Main.main(Main.java:83)


Without the cayenne jar, the application starts fine!

Any thoughts?

Thank you!

Cheers,

Gary

Re: Cayenne with Apache James

Posted by Tore Halset <ha...@pvv.ntnu.no>.
Hello.

I have used cayenne with james, but not in mailets. I created a small  
web app in cayenne and tapestry to administer users and e-mail  
addresses. We ended  up not using james for some other reason. James  
is great, so good luck!

Sorry, for not being able to help :)

Regards,
  - Tore.

On Apr 18, 2007, at 10:39 , Gary Jarrel wrote:

> Not sure if anyone has used Cayenne with James, so this maybe a stab
> in the dark, but I've written a few mailets which utilize Cayenne for
> some DB processing and as soon as I drop the Cayenne 2.0.2 jar
> (no-dep) into my James directory under:
> <instdir>/apps/james/SAR-INF/lib/ I get the following exception:
>
> org.apache.avalon.phoenix.interfaces.DeploymentException: Bad
> specification version format 'cayenne' in 'org.apache.cayenne'.
> (Reason: java.lang.NumberFormatException: For input string: "cayenne")


Re: Cayenne with Apache James

Posted by Andrus Adamchik <an...@objectstyle.org>.
I just committed the fix to 1.2 and 2.0 branches:

https://issues.apache.org/cayenne/browse/CAY-778

3.0 is not affected, as it is built with Maven. Current 3.0 manifest  
looks like this:

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: andrus
Build-Jdk: 1.5.0_07


Andrus


On Apr 18, 2007, at 12:50 PM, Gary Jarrel wrote:

> True but I pull cayenne from a maven repository, at
> http://repo1.maven.org/maven2/ so I've just update the jar file in my
> local repository - rather than rebuilding :)
>
> Gary
>
> On 4/18/07, Ahmed Mohombe <am...@yahoo.com> wrote:
>> > Ok here is one solution,
>> >
>> > In the Jar file delete: /META-INF/MANIFEST.MF
>> >
>> > James seems to parse this line in the file:
>> >
>> >
>> > Specification-Version: cayenne
>> >
>> > And expects to have a numeric Specification Version
>> You are right. James won't accept it.
>> In the build file cayenne-java.xml there seems to be a small typo:
>> ======
>> <attribute name="Specification-Version" value="${project.name}"/>
>> ======
>> should be:
>> ======
>> <attribute name="Specification-Version" value="${project.version}"/>
>> ======
>>
>> A better solution would be to apply the change and rebuild  
>> cayenne :).
>>
>> Ahmed.
>>
>>
>


Re: Cayenne with Apache James

Posted by Gary Jarrel <ga...@gmail.com>.
True but I pull cayenne from a maven repository, at
http://repo1.maven.org/maven2/ so I've just update the jar file in my
local repository - rather than rebuilding :)

Gary

On 4/18/07, Ahmed Mohombe <am...@yahoo.com> wrote:
> > Ok here is one solution,
> >
> > In the Jar file delete: /META-INF/MANIFEST.MF
> >
> > James seems to parse this line in the file:
> >
> >
> > Specification-Version: cayenne
> >
> > And expects to have a numeric Specification Version
> You are right. James won't accept it.
> In the build file cayenne-java.xml there seems to be a small typo:
> ======
> <attribute name="Specification-Version" value="${project.name}"/>
> ======
> should be:
> ======
> <attribute name="Specification-Version" value="${project.version}"/>
> ======
>
> A better solution would be to apply the change and rebuild cayenne :).
>
> Ahmed.
>
>

Re: Cayenne with Apache James

Posted by Ahmed Mohombe <am...@yahoo.com>.
> Ok here is one solution,
> 
> In the Jar file delete: /META-INF/MANIFEST.MF
> 
> James seems to parse this line in the file:
> 
> 
> Specification-Version: cayenne
> 
> And expects to have a numeric Specification Version
You are right. James won't accept it.
In the build file cayenne-java.xml there seems to be a small typo:
======
<attribute name="Specification-Version" value="${project.name}"/>
======
should be:
======
<attribute name="Specification-Version" value="${project.version}"/>
======

A better solution would be to apply the change and rebuild cayenne :).

Ahmed.


Re: Cayenne with Apache James

Posted by Gary Jarrel <ga...@gmail.com>.
Ok here is one solution,

In the Jar file delete: /META-INF/MANIFEST.MF

James seems to parse this line in the file:


Specification-Version: cayenne

And expects to have a numeric Specification Version

Gary

On 4/18/07, Gary Jarrel <ga...@gmail.com> wrote:
> Hi All!
>
> Not sure if anyone has used Cayenne with James, so this maybe a stab
> in the dark, but I've written a few mailets which utilize Cayenne for
> some DB processing and as soon as I drop the Cayenne 2.0.2 jar
> (no-dep) into my James directory under:
> <instdir>/apps/james/SAR-INF/lib/ I get the following exception:
>
> org.apache.avalon.phoenix.interfaces.DeploymentException: Bad
> specification version format 'cayenne' in 'org.apache.cayenne'.
> (Reason: java.lang.NumberFormatException: For input string: "cayenne")
>         at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:379)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
>         at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
>         at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
>         at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.avalon.phoenix.launcher.Main.startup(Main.java:128)
>         at org.apache.avalon.phoenix.launcher.Main.main(Main.java:83)
> Caused by: java.lang.IllegalArgumentException: Bad specification
> version format 'cayenne' in 'org.apache.cayenne'. (Reason:
> java.lang.NumberFormatException: For input string: "cayenne")
>         at org.apache.avalon.excalibur.extension.Extension.<init>(Extension.java:444)
>         at org.apache.avalon.excalibur.extension.Extension.getExtension(Extension.java:785)
>         at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:241)
>         at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:278)
>         at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.getOptionalPackagesFor(SimpleLoaderResolver.java:313)
>         at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.determineCompleteClasspath(SimpleLoaderResolver.java:233)
>         at org.apache.avalon.phoenix.components.classloader.SarLoaderResolver.createClassLoader(SarLoaderResolver.java:191)
>         at org.realityforge.classman.builder.LoaderBuilder.buildRegularClassLoader(LoaderBuilder.java:228)
>         at org.realityforge.classman.builder.LoaderBuilder.processClassLoader(LoaderBuilder.java:126)
>         at org.realityforge.classman.builder.LoaderBuilder.addAllClassLoaders(LoaderBuilder.java:71)
>         at org.realityforge.classman.builder.LoaderBuilder.buildClassLoaders(LoaderBuilder.java:48)
>         at org.apache.avalon.phoenix.components.classloader.DefaultClassLoaderManager.createClassLoaderSet(DefaultClassLoaderManager.java:233)
>         at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:331)
>         ... 14 more
> rethrown from
> java.lang.IllegalArgumentException: Bad specification version format
> 'cayenne' in 'org.apache.cayenne'. (Reason:
> java.lang.NumberFormatException: For input string: "cayenne")
>         at org.apache.avalon.excalibur.extension.Extension.<init>(Extension.java:444)
>         at org.apache.avalon.excalibur.extension.Extension.getExtension(Extension.java:785)
>         at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:241)
>         at org.apache.avalon.excalibur.extension.Extension.getAvailable(Extension.java:278)
>         at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.getOptionalPackagesFor(SimpleLoaderResolver.java:313)
>         at org.apache.avalon.phoenix.components.classloader.SimpleLoaderResolver.determineCompleteClasspath(SimpleLoaderResolver.java:233)
>         at org.apache.avalon.phoenix.components.classloader.SarLoaderResolver.createClassLoader(SarLoaderResolver.java:191)
>         at org.realityforge.classman.builder.LoaderBuilder.buildRegularClassLoader(LoaderBuilder.java:228)
>         at org.realityforge.classman.builder.LoaderBuilder.processClassLoader(LoaderBuilder.java:126)
>         at org.realityforge.classman.builder.LoaderBuilder.addAllClassLoaders(LoaderBuilder.java:71)
>         at org.realityforge.classman.builder.LoaderBuilder.buildClassLoaders(LoaderBuilder.java:48)
>         at org.apache.avalon.phoenix.components.classloader.DefaultClassLoaderManager.createClassLoaderSet(DefaultClassLoaderManager.java:233)
>         at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:331)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)
>         at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)
>         at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)
>         at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:184)
>         at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:145)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.avalon.phoenix.launcher.Main.startup(Main.java:128)
>         at org.apache.avalon.phoenix.launcher.Main.main(Main.java:83)
>
>
> Without the cayenne jar, the application starts fine!
>
> Any thoughts?
>
> Thank you!
>
> Cheers,
>
> Gary
>

Re: Cayenne with Apache James

Posted by Gary Jarrel <ga...@gmail.com>.
And yet another, change "cayenne" in the line:

Specification-Version: cayenne

to a numerical value.

Gary

On 4/18/07, Gary Jarrel <ga...@gmail.com> wrote:
<snip>