You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by bongosdude <bo...@gmail.com> on 2009/01/09 19:18:26 UTC

Maven build failed with missing WEB-INF/geronimo-web.xml

Background 

I encountered this problem that I do not quite understand. I set up my demo
after I looked at the car-maven-plugin, m2eclipse and the geronimo sample
calculator. I have manually created my demo project by using maven
achetype-create with groupId=org.apache.geronimo.samples and
archytypeId=geronimo-samples-archetypes. And then I tweaked POM files
generated by looking at calculator POM files. I had to go through this
manual process because my web application is Tapestry5. And I have to add
dependencies to POM files. Maven build sub projects successfully except when
it tried to build jetty and tomcat CAR plugin. Here are the error messages
that I got:

[WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
[INFO]  The Strict Manifest Classpath processing mode is in effect.
This option can be altered by specifying
-DXorg.apache.geronimo.deployment.LenientMFCP=true|false
Specify ="true" for more lenient processing such as ignoring missing jars
and references that are not spec compliant.
12:50:39,649 INFO  [config] Configuring
Service(id=DefaultStatelessContainer, type=Container, provider-id=Default
Stateless Container)
12:50:39,653 INFO  [config] Configuring Service(id=DefaultStatefulContainer,
type=Container, provider-id=Default Stateful Container)
12:50:39,654 INFO  [config] Configuring
Service(id=DefaultSingletonContainer, type=Container, provider-id=Default
Singleton Container)
12:50:39,655 INFO  [config] Configuring Service(id=DefaultBMPContainer,
type=Container, provider-id=Default BMP Container)
12:50:39,655 INFO  [config] Configuring Service(id=DefaultCMPContainer,
type=Container, provider-id=Default CMP Container)
12:50:39,663 INFO  [config] Configuring enterprise application:
com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/PayPalNVPProcessor)
12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/NutalkNewOrderBean)
12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/SampleBean)
12:50:40,412 INFO  [config] Enterprise application
"com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] could not package plugin

Embedded error: Manifest class path entries must be a valid jar file (JAVAEE
5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar, resolved to
targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
    looking at: callingcard-war-0.0.1-SNAPSHOT.war    current classpath:
[WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
../lib/commons-logging-1.0.4.jar, ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]   
ignoring modules: [callingcard-ejb-0.0.1-SNAPSHOT.jar,
callingcard-war-0.0.1-SNAPSHOT.war]
No such file or directory
[INFO]
------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 47 seconds
[INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
[INFO] Final Memory: 64M/125M
[INFO]
------------------------------------------------------------------------
die


Questions:

1. It seems that I got my first error is that I did not create
WEB-INF/geronimo-web.xml. I can define the option
-DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
successful. However, I looked at the calculator, it does not have the
WEB-INF/geronimo-web.xml but maven does not fail when it builds jetty/tomcat
car plugin. So why do I have this error? What do I miss in my pom files?

2. Can somesome explain what
DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?

Thank for any helps

-B



-----
B Amigo:super:
-- 
View this message in context: http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21377598.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.


Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by Joe Bohn <jo...@earthlink.net>.

The warning concerning the missing geronimo-web.xml is not related to 
the INFO message about the Strict Manifest Classpath processing.

Concerning the LenientMFCP:  This option was added to support archives 
that don't adhere to the standard specification which requires that the 
manifest classpath entries are processed.  Providing the override option 
means that we will ignore missing entries or non-jar entries.

Joe

bongosdude wrote:
> Background 
> 
> I encountered this problem that I do not quite understand. I set up my demo
> after I looked at the car-maven-plugin, m2eclipse and the geronimo sample
> calculator. I have manually created my demo project by using maven
> achetype-create with groupId=org.apache.geronimo.samples and
> archytypeId=geronimo-samples-archetypes. And then I tweaked POM files
> generated by looking at calculator POM files. I had to go through this
> manual process because my web application is Tapestry5. And I have to add
> dependencies to POM files. Maven build sub projects successfully except when
> it tried to build jetty and tomcat CAR plugin. Here are the error messages
> that I got:
> 
> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
> [INFO]  The Strict Manifest Classpath processing mode is in effect.
> This option can be altered by specifying
> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
> Specify ="true" for more lenient processing such as ignoring missing jars
> and references that are not spec compliant.
> 12:50:39,649 INFO  [config] Configuring
> Service(id=DefaultStatelessContainer, type=Container, provider-id=Default
> Stateless Container)
> 12:50:39,653 INFO  [config] Configuring Service(id=DefaultStatefulContainer,
> type=Container, provider-id=Default Stateful Container)
> 12:50:39,654 INFO  [config] Configuring
> Service(id=DefaultSingletonContainer, type=Container, provider-id=Default
> Singleton Container)
> 12:50:39,655 INFO  [config] Configuring Service(id=DefaultBMPContainer,
> type=Container, provider-id=Default BMP Container)
> 12:50:39,655 INFO  [config] Configuring Service(id=DefaultCMPContainer,
> type=Container, provider-id=Default CMP Container)
> 12:50:39,663 INFO  [config] Configuring enterprise application:
> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/PayPalNVPProcessor)
> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/NutalkNewOrderBean)
> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/SampleBean)
> 12:50:40,412 INFO  [config] Enterprise application
> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] could not package plugin
> 
> Embedded error: Manifest class path entries must be a valid jar file (JAVAEE
> 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar, resolved to
> targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>     looking at: callingcard-war-0.0.1-SNAPSHOT.war    current classpath:
> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
> ../lib/commons-logging-1.0.4.jar, ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]   
> ignoring modules: [callingcard-ejb-0.0.1-SNAPSHOT.jar,
> callingcard-war-0.0.1-SNAPSHOT.war]
> No such file or directory
> [INFO]
> ------------------------------------------------------------------------
> [INFO] For more information, run Maven with the -e switch
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 47 seconds
> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
> [INFO] Final Memory: 64M/125M
> [INFO]
> ------------------------------------------------------------------------
> die
> 
> 
> Questions:
> 
> 1. It seems that I got my first error is that I did not create
> WEB-INF/geronimo-web.xml. I can define the option
> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
> successful. However, I looked at the calculator, it does not have the
> WEB-INF/geronimo-web.xml but maven does not fail when it builds jetty/tomcat
> car plugin. So why do I have this error? What do I miss in my pom files?
> 
> 2. Can somesome explain what
> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
> 
> Thank for any helps
> 
> -B
> 
> 
> 
> -----
> B Amigo:super:


Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by Shawn Jiang <ge...@gmail.com>.
It could be :

<build>
<*plugins*>
<*plugin*>
  <groupId>org.apache.*maven*.*plugins*</groupId>
  <artifactId>*maven*-XXX-*plugin*</artifactId>
  <configuration>
    <archive>
      <*manifest*>
        <addClasspath>false</addClasspath>
      </*manifest*>
    </archive>
  </configuration>
</*plugin*>
</*plugins*>
</build>

The XXX stands for war, jar, or ear.




2009/1/11 David Jencks <da...@yahoo.com>

>
> On Jan 10, 2009, at 12:22 PM, bongosdude wrote:
>
>
>> David,
>>
>> This is quite interesting point that you point it out. Do you know how I
>> can
>> make maven stop generating the MANIFEST.MF file?
>>
>
> I think you want maven to generate the manifest.mf file but not include a
> CLASS-PATH entry.  However, I don't know how to make this happen.
>
> thanks
> david jencks
>
>
>>
>> Thanks
>> -B
>>
>> djencks wrote:
>>
>>>
>>> Hi bongosdude,
>>>
>>> It looks like the war plugin is not javaee-5 aware.  Anything you put
>>> in the ear lib directory gets into the ear classloader which is a
>>> parent to the war classloader.  Thus you don't need the war manifest
>>> classpath entries at all in an ee5 container such as geronimo.  Your
>>> solution should work but is unnecessarily complicated.  Since the
>>> maven plugin isn't ee-5 aware it may be easier not to stop generating
>>> the manifest classpath entries.
>>>
>>> Thanks for pointing this out!  I created a maven jira in case anyone
>>> there wants to work on this...  http://jira.codehaus.org/browse/MWAR-178
>>>
>>> david jencks
>>>
>>> On Jan 10, 2009, at 9:35 AM, bongosdude wrote:
>>>
>>>
>>>> Hi,
>>>>
>>>> I found the an interesting thing about the problem that I reported
>>>> in this
>>>> post thread. Basically, I set up my project as maven and then
>>>> convert the
>>>> build EAR into eclipse projects so that I can debug my ejb and war
>>>> app using
>>>> GEP (please also see my other post from
>>>> http://www.nabble.com/car-maven-plugin-and-GEP-to21095185s134.html
>>>> to see
>>>> how this can be done.) I have followed the practice to bundle my WAR
>>>> project
>>>> so that it refers all lib dependencies to its EAR lib directory. This
>>>> practice is well documented as skinny war (please see
>>>>
>>>> http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html
>>>> )
>>>> .
>>>> The interesting here is that maven is quite smart to handle transitive
>>>> dependency and as a result, mave generates my war META-INF/
>>>> METAFEST.MF to
>>>> refer to some missing jar files in EAR lib directory. Once I
>>>> manually added
>>>> these jars file to my ear pom.xml file, I fixed the mysterious
>>>> "JAVAEE 5
>>>> Section 8.2" problem.
>>>>
>>>> Thanks for all excellent supports from this forum who has made
>>>> geronimo well
>>>> JEE app and product.
>>>>
>>>> -B
>>>>
>>>>
>>>> bongosdude wrote:
>>>>
>>>>>
>>>>> After I fixed the manifest classpath problem, maven successfully
>>>>> build my
>>>>> project. But I still have questions about geronimo-web.xml.
>>>>>
>>>>> Thanks
>>>>> -B
>>>>>
>>>>> Embedded error: Manifest class path entries must be a valid jar file
>>>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar,
>>>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>>>
>>>>>
>>>>>
>>>>> bongosdude wrote:
>>>>>
>>>>>>
>>>>>> Background
>>>>>>
>>>>>> I encountered this problem that I do not quite understand. I set
>>>>>> up my
>>>>>> demo after I looked at the car-maven-plugin, m2eclipse and the
>>>>>> geronimo
>>>>>> sample calculator. I have manually created my demo project by
>>>>>> using maven
>>>>>> achetype-create with groupId=org.apache.geronimo.samples and
>>>>>> archytypeId=geronimo-samples-archetypes. And then I tweaked POM
>>>>>> files
>>>>>> generated by looking at calculator POM files. I had to go through
>>>>>> this
>>>>>> manual process because my web application is Tapestry5. And I have
>>>>>> to add
>>>>>> dependencies to POM files. Maven build sub projects successfully
>>>>>> except
>>>>>> when it tried to build jetty and tomcat CAR plugin. Here are the
>>>>>> error
>>>>>> messages that I got:
>>>>>>
>>>>>> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
>>>>>> [INFO]  The Strict Manifest Classpath processing mode is in effect.
>>>>>> This option can be altered by specifying
>>>>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
>>>>>> Specify ="true" for more lenient processing such as ignoring
>>>>>> missing jars
>>>>>> and references that are not spec compliant.
>>>>>> 12:50:39,649 INFO  [config] Configuring
>>>>>> Service(id=DefaultStatelessContainer, type=Container, provider-
>>>>>> id=Default
>>>>>> Stateless Container)
>>>>>> 12:50:39,653 INFO  [config] Configuring
>>>>>> Service(id=DefaultStatefulContainer, type=Container, provider-
>>>>>> id=Default
>>>>>> Stateful Container)
>>>>>> 12:50:39,654 INFO  [config] Configuring
>>>>>> Service(id=DefaultSingletonContainer, type=Container, provider-
>>>>>> id=Default
>>>>>> Singleton Container)
>>>>>> 12:50:39,655 INFO  [config] Configuring
>>>>>> Service(id=DefaultBMPContainer,
>>>>>> type=Container, provider-id=Default BMP Container)
>>>>>> 12:50:39,655 INFO  [config] Configuring
>>>>>> Service(id=DefaultCMPContainer,
>>>>>> type=Container, provider-id=Default CMP Container)
>>>>>> 12:50:39,663 INFO  [config] Configuring enterprise application:
>>>>>> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
>>>>>> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
>>>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/
>>>>>> PayPalNVPProcessor)
>>>>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
>>>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/
>>>>>> NutalkNewOrderBean)
>>>>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
>>>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/
>>>>>> SampleBean)
>>>>>> 12:50:40,412 INFO  [config] Enterprise application
>>>>>> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
>>>>>> [INFO]
>>>>>>
>>>>>> ------------------------------------------------------------------------
>>>>>> [ERROR] BUILD ERROR
>>>>>> [INFO]
>>>>>>
>>>>>> ------------------------------------------------------------------------
>>>>>> [INFO] could not package plugin
>>>>>>
>>>>>> Embedded error: Manifest class path entries must be a valid jar file
>>>>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-
>>>>>> SNAPSHOT.jar,
>>>>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>>>>  looking at: callingcard-war-0.0.1-SNAPSHOT.war    current
>>>>>> classpath:
>>>>>> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
>>>>>> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
>>>>>> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
>>>>>> ../lib/commons-logging-1.0.4.jar,
>>>>>> ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]    ignoring modules:
>>>>>> [callingcard-ejb-0.0.1-SNAPSHOT.jar, callingcard-war-0.0.1-
>>>>>> SNAPSHOT.war]
>>>>>> No such file or directory
>>>>>> [INFO]
>>>>>>
>>>>>> ------------------------------------------------------------------------
>>>>>> [INFO] For more information, run Maven with the -e switch
>>>>>> [INFO]
>>>>>>
>>>>>> ------------------------------------------------------------------------
>>>>>> [INFO] Total time: 47 seconds
>>>>>> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
>>>>>> [INFO] Final Memory: 64M/125M
>>>>>> [INFO]
>>>>>>
>>>>>> ------------------------------------------------------------------------
>>>>>> die
>>>>>>
>>>>>>
>>>>>> Questions:
>>>>>>
>>>>>> 1. It seems that I got my first error is that I did not create
>>>>>> WEB-INF/geronimo-web.xml. I can define the option
>>>>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
>>>>>> successful. However, I looked at the calculator, it does not have
>>>>>> the
>>>>>> WEB-INF/geronimo-web.xml but maven does not fail when it builds
>>>>>> jetty/tomcat car plugin. So why do I have this error? What do I
>>>>>> miss in
>>>>>> my pom files?
>>>>>>
>>>>>> 2. Can somesome explain what
>>>>>> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
>>>>>>
>>>>>> Thank for any helps
>>>>>>
>>>>>> -B
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>> -----
>>>> B Amigo:super:
>>>> --
>>>> View this message in context:
>>>>
>>>> http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21390405.html
>>>> Sent from the Apache Geronimo - Users mailing list archive at
>>>> Nabble.com.
>>>>
>>>>
>>>
>>>
>>>
>>
>> -----
>> B Amigo:super:
>> --
>> View this message in context:
>> http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21392243.html
>> Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.
>>
>>
>


-- 
Shawn

Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by David Jencks <da...@yahoo.com>.
On Jan 10, 2009, at 12:22 PM, bongosdude wrote:

>
> David,
>
> This is quite interesting point that you point it out. Do you know  
> how I can
> make maven stop generating the MANIFEST.MF file?

I think you want maven to generate the manifest.mf file but not  
include a CLASS-PATH entry.  However, I don't know how to make this  
happen.

thanks
david jencks
>
>
> Thanks
> -B
>
> djencks wrote:
>>
>> Hi bongosdude,
>>
>> It looks like the war plugin is not javaee-5 aware.  Anything you put
>> in the ear lib directory gets into the ear classloader which is a
>> parent to the war classloader.  Thus you don't need the war manifest
>> classpath entries at all in an ee5 container such as geronimo.  Your
>> solution should work but is unnecessarily complicated.  Since the
>> maven plugin isn't ee-5 aware it may be easier not to stop generating
>> the manifest classpath entries.
>>
>> Thanks for pointing this out!  I created a maven jira in case anyone
>> there wants to work on this...  http://jira.codehaus.org/browse/MWAR-178
>>
>> david jencks
>>
>> On Jan 10, 2009, at 9:35 AM, bongosdude wrote:
>>
>>>
>>> Hi,
>>>
>>> I found the an interesting thing about the problem that I reported
>>> in this
>>> post thread. Basically, I set up my project as maven and then
>>> convert the
>>> build EAR into eclipse projects so that I can debug my ejb and war
>>> app using
>>> GEP (please also see my other post from
>>> http://www.nabble.com/car-maven-plugin-and-GEP-to21095185s134.html
>>> to see
>>> how this can be done.) I have followed the practice to bundle my WAR
>>> project
>>> so that it refers all lib dependencies to its EAR lib directory.  
>>> This
>>> practice is well documented as skinny war (please see
>>> http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html)
>>> .
>>> The interesting here is that maven is quite smart to handle  
>>> transitive
>>> dependency and as a result, mave generates my war META-INF/
>>> METAFEST.MF to
>>> refer to some missing jar files in EAR lib directory. Once I
>>> manually added
>>> these jars file to my ear pom.xml file, I fixed the mysterious
>>> "JAVAEE 5
>>> Section 8.2" problem.
>>>
>>> Thanks for all excellent supports from this forum who has made
>>> geronimo well
>>> JEE app and product.
>>>
>>> -B
>>>
>>>
>>> bongosdude wrote:
>>>>
>>>> After I fixed the manifest classpath problem, maven successfully
>>>> build my
>>>> project. But I still have questions about geronimo-web.xml.
>>>>
>>>> Thanks
>>>> -B
>>>>
>>>> Embedded error: Manifest class path entries must be a valid jar  
>>>> file
>>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1- 
>>>> SNAPSHOT.jar,
>>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>>
>>>>
>>>>
>>>> bongosdude wrote:
>>>>>
>>>>> Background
>>>>>
>>>>> I encountered this problem that I do not quite understand. I set
>>>>> up my
>>>>> demo after I looked at the car-maven-plugin, m2eclipse and the
>>>>> geronimo
>>>>> sample calculator. I have manually created my demo project by
>>>>> using maven
>>>>> achetype-create with groupId=org.apache.geronimo.samples and
>>>>> archytypeId=geronimo-samples-archetypes. And then I tweaked POM
>>>>> files
>>>>> generated by looking at calculator POM files. I had to go through
>>>>> this
>>>>> manual process because my web application is Tapestry5. And I have
>>>>> to add
>>>>> dependencies to POM files. Maven build sub projects successfully
>>>>> except
>>>>> when it tried to build jetty and tomcat CAR plugin. Here are the
>>>>> error
>>>>> messages that I got:
>>>>>
>>>>> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
>>>>> [INFO]  The Strict Manifest Classpath processing mode is in  
>>>>> effect.
>>>>> This option can be altered by specifying
>>>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
>>>>> Specify ="true" for more lenient processing such as ignoring
>>>>> missing jars
>>>>> and references that are not spec compliant.
>>>>> 12:50:39,649 INFO  [config] Configuring
>>>>> Service(id=DefaultStatelessContainer, type=Container, provider-
>>>>> id=Default
>>>>> Stateless Container)
>>>>> 12:50:39,653 INFO  [config] Configuring
>>>>> Service(id=DefaultStatefulContainer, type=Container, provider-
>>>>> id=Default
>>>>> Stateful Container)
>>>>> 12:50:39,654 INFO  [config] Configuring
>>>>> Service(id=DefaultSingletonContainer, type=Container, provider-
>>>>> id=Default
>>>>> Singleton Container)
>>>>> 12:50:39,655 INFO  [config] Configuring
>>>>> Service(id=DefaultBMPContainer,
>>>>> type=Container, provider-id=Default BMP Container)
>>>>> 12:50:39,655 INFO  [config] Configuring
>>>>> Service(id=DefaultCMPContainer,
>>>>> type=Container, provider-id=Default CMP Container)
>>>>> 12:50:39,663 INFO  [config] Configuring enterprise application:
>>>>> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
>>>>> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb  
>>>>> PayPalNVPProcessor:
>>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/
>>>>> PayPalNVPProcessor)
>>>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb  
>>>>> NutalkNewOrderBean:
>>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/
>>>>> NutalkNewOrderBean)
>>>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
>>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/
>>>>> SampleBean)
>>>>> 12:50:40,412 INFO  [config] Enterprise application
>>>>> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car"  
>>>>> loaded.
>>>>> [INFO]
>>>>> ------------------------------------------------------------------------
>>>>> [ERROR] BUILD ERROR
>>>>> [INFO]
>>>>> ------------------------------------------------------------------------
>>>>> [INFO] could not package plugin
>>>>>
>>>>> Embedded error: Manifest class path entries must be a valid jar  
>>>>> file
>>>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-
>>>>> SNAPSHOT.jar,
>>>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>>>   looking at: callingcard-war-0.0.1-SNAPSHOT.war    current
>>>>> classpath:
>>>>> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
>>>>> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
>>>>> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
>>>>> ../lib/commons-logging-1.0.4.jar,
>>>>> ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]    ignoring modules:
>>>>> [callingcard-ejb-0.0.1-SNAPSHOT.jar, callingcard-war-0.0.1-
>>>>> SNAPSHOT.war]
>>>>> No such file or directory
>>>>> [INFO]
>>>>> ------------------------------------------------------------------------
>>>>> [INFO] For more information, run Maven with the -e switch
>>>>> [INFO]
>>>>> ------------------------------------------------------------------------
>>>>> [INFO] Total time: 47 seconds
>>>>> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
>>>>> [INFO] Final Memory: 64M/125M
>>>>> [INFO]
>>>>> ------------------------------------------------------------------------
>>>>> die
>>>>>
>>>>>
>>>>> Questions:
>>>>>
>>>>> 1. It seems that I got my first error is that I did not create
>>>>> WEB-INF/geronimo-web.xml. I can define the option
>>>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the  
>>>>> build
>>>>> successful. However, I looked at the calculator, it does not have
>>>>> the
>>>>> WEB-INF/geronimo-web.xml but maven does not fail when it builds
>>>>> jetty/tomcat car plugin. So why do I have this error? What do I
>>>>> miss in
>>>>> my pom files?
>>>>>
>>>>> 2. Can somesome explain what
>>>>> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
>>>>>
>>>>> Thank for any helps
>>>>>
>>>>> -B
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>> -----
>>> B Amigo:super:
>>> -- 
>>> View this message in context:
>>> http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21390405.html
>>> Sent from the Apache Geronimo - Users mailing list archive at
>>> Nabble.com.
>>>
>>
>>
>>
>
>
> -----
> B Amigo:super:
> -- 
> View this message in context: http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21392243.html
> Sent from the Apache Geronimo - Users mailing list archive at  
> Nabble.com.
>


Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by bongosdude <bo...@gmail.com>.
David,

This is quite interesting point that you point it out. Do you know how I can
make maven stop generating the MANIFEST.MF file?

Thanks
-B

djencks wrote:
> 
> Hi bongosdude,
> 
> It looks like the war plugin is not javaee-5 aware.  Anything you put  
> in the ear lib directory gets into the ear classloader which is a  
> parent to the war classloader.  Thus you don't need the war manifest  
> classpath entries at all in an ee5 container such as geronimo.  Your  
> solution should work but is unnecessarily complicated.  Since the  
> maven plugin isn't ee-5 aware it may be easier not to stop generating  
> the manifest classpath entries.
> 
> Thanks for pointing this out!  I created a maven jira in case anyone  
> there wants to work on this...  http://jira.codehaus.org/browse/MWAR-178
> 
> david jencks
> 
> On Jan 10, 2009, at 9:35 AM, bongosdude wrote:
> 
>>
>> Hi,
>>
>> I found the an interesting thing about the problem that I reported  
>> in this
>> post thread. Basically, I set up my project as maven and then  
>> convert the
>> build EAR into eclipse projects so that I can debug my ejb and war  
>> app using
>> GEP (please also see my other post from
>> http://www.nabble.com/car-maven-plugin-and-GEP-to21095185s134.html  
>> to see
>> how this can be done.) I have followed the practice to bundle my WAR  
>> project
>> so that it refers all lib dependencies to its EAR lib directory. This
>> practice is well documented as skinny war (please see
>> http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html) 
>> .
>> The interesting here is that maven is quite smart to handle transitive
>> dependency and as a result, mave generates my war META-INF/ 
>> METAFEST.MF to
>> refer to some missing jar files in EAR lib directory. Once I  
>> manually added
>> these jars file to my ear pom.xml file, I fixed the mysterious  
>> "JAVAEE 5
>> Section 8.2" problem.
>>
>> Thanks for all excellent supports from this forum who has made  
>> geronimo well
>> JEE app and product.
>>
>> -B
>>
>>
>> bongosdude wrote:
>>>
>>> After I fixed the manifest classpath problem, maven successfully  
>>> build my
>>> project. But I still have questions about geronimo-web.xml.
>>>
>>> Thanks
>>> -B
>>>
>>> Embedded error: Manifest class path entries must be a valid jar file
>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar,
>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>
>>>
>>>
>>> bongosdude wrote:
>>>>
>>>> Background
>>>>
>>>> I encountered this problem that I do not quite understand. I set  
>>>> up my
>>>> demo after I looked at the car-maven-plugin, m2eclipse and the  
>>>> geronimo
>>>> sample calculator. I have manually created my demo project by  
>>>> using maven
>>>> achetype-create with groupId=org.apache.geronimo.samples and
>>>> archytypeId=geronimo-samples-archetypes. And then I tweaked POM  
>>>> files
>>>> generated by looking at calculator POM files. I had to go through  
>>>> this
>>>> manual process because my web application is Tapestry5. And I have  
>>>> to add
>>>> dependencies to POM files. Maven build sub projects successfully  
>>>> except
>>>> when it tried to build jetty and tomcat CAR plugin. Here are the  
>>>> error
>>>> messages that I got:
>>>>
>>>> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
>>>> [INFO]  The Strict Manifest Classpath processing mode is in effect.
>>>> This option can be altered by specifying
>>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
>>>> Specify ="true" for more lenient processing such as ignoring  
>>>> missing jars
>>>> and references that are not spec compliant.
>>>> 12:50:39,649 INFO  [config] Configuring
>>>> Service(id=DefaultStatelessContainer, type=Container, provider- 
>>>> id=Default
>>>> Stateless Container)
>>>> 12:50:39,653 INFO  [config] Configuring
>>>> Service(id=DefaultStatefulContainer, type=Container, provider- 
>>>> id=Default
>>>> Stateful Container)
>>>> 12:50:39,654 INFO  [config] Configuring
>>>> Service(id=DefaultSingletonContainer, type=Container, provider- 
>>>> id=Default
>>>> Singleton Container)
>>>> 12:50:39,655 INFO  [config] Configuring  
>>>> Service(id=DefaultBMPContainer,
>>>> type=Container, provider-id=Default BMP Container)
>>>> 12:50:39,655 INFO  [config] Configuring  
>>>> Service(id=DefaultCMPContainer,
>>>> type=Container, provider-id=Default CMP Container)
>>>> 12:50:39,663 INFO  [config] Configuring enterprise application:
>>>> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
>>>> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/ 
>>>> PayPalNVPProcessor)
>>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/ 
>>>> NutalkNewOrderBean)
>>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
>>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/ 
>>>> SampleBean)
>>>> 12:50:40,412 INFO  [config] Enterprise application
>>>> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [ERROR] BUILD ERROR
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [INFO] could not package plugin
>>>>
>>>> Embedded error: Manifest class path entries must be a valid jar file
>>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1- 
>>>> SNAPSHOT.jar,
>>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>>    looking at: callingcard-war-0.0.1-SNAPSHOT.war    current  
>>>> classpath:
>>>> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
>>>> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
>>>> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
>>>> ../lib/commons-logging-1.0.4.jar,
>>>> ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]    ignoring modules:
>>>> [callingcard-ejb-0.0.1-SNAPSHOT.jar, callingcard-war-0.0.1- 
>>>> SNAPSHOT.war]
>>>> No such file or directory
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [INFO] For more information, run Maven with the -e switch
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [INFO] Total time: 47 seconds
>>>> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
>>>> [INFO] Final Memory: 64M/125M
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> die
>>>>
>>>>
>>>> Questions:
>>>>
>>>> 1. It seems that I got my first error is that I did not create
>>>> WEB-INF/geronimo-web.xml. I can define the option
>>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
>>>> successful. However, I looked at the calculator, it does not have  
>>>> the
>>>> WEB-INF/geronimo-web.xml but maven does not fail when it builds
>>>> jetty/tomcat car plugin. So why do I have this error? What do I  
>>>> miss in
>>>> my pom files?
>>>>
>>>> 2. Can somesome explain what
>>>> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
>>>>
>>>> Thank for any helps
>>>>
>>>> -B
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>> -----
>> B Amigo:super:
>> -- 
>> View this message in context:
>> http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21390405.html
>> Sent from the Apache Geronimo - Users mailing list archive at  
>> Nabble.com.
>>
> 
> 
> 


-----
B Amigo:super:
-- 
View this message in context: http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21392243.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.


Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by David Jencks <da...@yahoo.com>.
Hi bongosdude,

It looks like the war plugin is not javaee-5 aware.  Anything you put  
in the ear lib directory gets into the ear classloader which is a  
parent to the war classloader.  Thus you don't need the war manifest  
classpath entries at all in an ee5 container such as geronimo.  Your  
solution should work but is unnecessarily complicated.  Since the  
maven plugin isn't ee-5 aware it may be easier not to stop generating  
the manifest classpath entries.

Thanks for pointing this out!  I created a maven jira in case anyone  
there wants to work on this...  http://jira.codehaus.org/browse/MWAR-178

david jencks

On Jan 10, 2009, at 9:35 AM, bongosdude wrote:

>
> Hi,
>
> I found the an interesting thing about the problem that I reported  
> in this
> post thread. Basically, I set up my project as maven and then  
> convert the
> build EAR into eclipse projects so that I can debug my ejb and war  
> app using
> GEP (please also see my other post from
> http://www.nabble.com/car-maven-plugin-and-GEP-to21095185s134.html  
> to see
> how this can be done.) I have followed the practice to bundle my WAR  
> project
> so that it refers all lib dependencies to its EAR lib directory. This
> practice is well documented as skinny war (please see
> http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html) 
> .
> The interesting here is that maven is quite smart to handle transitive
> dependency and as a result, mave generates my war META-INF/ 
> METAFEST.MF to
> refer to some missing jar files in EAR lib directory. Once I  
> manually added
> these jars file to my ear pom.xml file, I fixed the mysterious  
> "JAVAEE 5
> Section 8.2" problem.
>
> Thanks for all excellent supports from this forum who has made  
> geronimo well
> JEE app and product.
>
> -B
>
>
> bongosdude wrote:
>>
>> After I fixed the manifest classpath problem, maven successfully  
>> build my
>> project. But I still have questions about geronimo-web.xml.
>>
>> Thanks
>> -B
>>
>> Embedded error: Manifest class path entries must be a valid jar file
>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar,
>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>
>>
>>
>> bongosdude wrote:
>>>
>>> Background
>>>
>>> I encountered this problem that I do not quite understand. I set  
>>> up my
>>> demo after I looked at the car-maven-plugin, m2eclipse and the  
>>> geronimo
>>> sample calculator. I have manually created my demo project by  
>>> using maven
>>> achetype-create with groupId=org.apache.geronimo.samples and
>>> archytypeId=geronimo-samples-archetypes. And then I tweaked POM  
>>> files
>>> generated by looking at calculator POM files. I had to go through  
>>> this
>>> manual process because my web application is Tapestry5. And I have  
>>> to add
>>> dependencies to POM files. Maven build sub projects successfully  
>>> except
>>> when it tried to build jetty and tomcat CAR plugin. Here are the  
>>> error
>>> messages that I got:
>>>
>>> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
>>> [INFO]  The Strict Manifest Classpath processing mode is in effect.
>>> This option can be altered by specifying
>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
>>> Specify ="true" for more lenient processing such as ignoring  
>>> missing jars
>>> and references that are not spec compliant.
>>> 12:50:39,649 INFO  [config] Configuring
>>> Service(id=DefaultStatelessContainer, type=Container, provider- 
>>> id=Default
>>> Stateless Container)
>>> 12:50:39,653 INFO  [config] Configuring
>>> Service(id=DefaultStatefulContainer, type=Container, provider- 
>>> id=Default
>>> Stateful Container)
>>> 12:50:39,654 INFO  [config] Configuring
>>> Service(id=DefaultSingletonContainer, type=Container, provider- 
>>> id=Default
>>> Singleton Container)
>>> 12:50:39,655 INFO  [config] Configuring  
>>> Service(id=DefaultBMPContainer,
>>> type=Container, provider-id=Default BMP Container)
>>> 12:50:39,655 INFO  [config] Configuring  
>>> Service(id=DefaultCMPContainer,
>>> type=Container, provider-id=Default CMP Container)
>>> 12:50:39,663 INFO  [config] Configuring enterprise application:
>>> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
>>> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/ 
>>> PayPalNVPProcessor)
>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/ 
>>> NutalkNewOrderBean)
>>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
>>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/ 
>>> SampleBean)
>>> 12:50:40,412 INFO  [config] Enterprise application
>>> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
>>> [INFO]
>>> ------------------------------------------------------------------------
>>> [ERROR] BUILD ERROR
>>> [INFO]
>>> ------------------------------------------------------------------------
>>> [INFO] could not package plugin
>>>
>>> Embedded error: Manifest class path entries must be a valid jar file
>>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1- 
>>> SNAPSHOT.jar,
>>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>>    looking at: callingcard-war-0.0.1-SNAPSHOT.war    current  
>>> classpath:
>>> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
>>> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
>>> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
>>> ../lib/commons-logging-1.0.4.jar,
>>> ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]    ignoring modules:
>>> [callingcard-ejb-0.0.1-SNAPSHOT.jar, callingcard-war-0.0.1- 
>>> SNAPSHOT.war]
>>> No such file or directory
>>> [INFO]
>>> ------------------------------------------------------------------------
>>> [INFO] For more information, run Maven with the -e switch
>>> [INFO]
>>> ------------------------------------------------------------------------
>>> [INFO] Total time: 47 seconds
>>> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
>>> [INFO] Final Memory: 64M/125M
>>> [INFO]
>>> ------------------------------------------------------------------------
>>> die
>>>
>>>
>>> Questions:
>>>
>>> 1. It seems that I got my first error is that I did not create
>>> WEB-INF/geronimo-web.xml. I can define the option
>>> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
>>> successful. However, I looked at the calculator, it does not have  
>>> the
>>> WEB-INF/geronimo-web.xml but maven does not fail when it builds
>>> jetty/tomcat car plugin. So why do I have this error? What do I  
>>> miss in
>>> my pom files?
>>>
>>> 2. Can somesome explain what
>>> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
>>>
>>> Thank for any helps
>>>
>>> -B
>>>
>>>
>>>
>>
>>
>
>
> -----
> B Amigo:super:
> -- 
> View this message in context: http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21390405.html
> Sent from the Apache Geronimo - Users mailing list archive at  
> Nabble.com.
>


Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by bongosdude <bo...@gmail.com>.
Hi,

I found the an interesting thing about the problem that I reported in this
post thread. Basically, I set up my project as maven and then convert the
build EAR into eclipse projects so that I can debug my ejb and war app using
GEP (please also see my other post from
http://www.nabble.com/car-maven-plugin-and-GEP-to21095185s134.html to see
how this can be done.) I have followed the practice to bundle my WAR project
so that it refers all lib dependencies to its EAR lib directory. This
practice is well documented as skinny war (please see
http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html).
The interesting here is that maven is quite smart to handle transitive
dependency and as a result, mave generates my war META-INF/METAFEST.MF to
refer to some missing jar files in EAR lib directory. Once I manually added
these jars file to my ear pom.xml file, I fixed the mysterious "JAVAEE 5
Section 8.2" problem.

Thanks for all excellent supports from this forum who has made geronimo well
JEE app and product.

-B


bongosdude wrote:
> 
> After I fixed the manifest classpath problem, maven successfully build my
> project. But I still have questions about geronimo-web.xml.
> 
> Thanks
> -B
> 
> Embedded error: Manifest class path entries must be a valid jar file
> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar,
> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
> 
> 
> 
> bongosdude wrote:
>> 
>> Background 
>> 
>> I encountered this problem that I do not quite understand. I set up my
>> demo after I looked at the car-maven-plugin, m2eclipse and the geronimo
>> sample calculator. I have manually created my demo project by using maven
>> achetype-create with groupId=org.apache.geronimo.samples and
>> archytypeId=geronimo-samples-archetypes. And then I tweaked POM files
>> generated by looking at calculator POM files. I had to go through this
>> manual process because my web application is Tapestry5. And I have to add
>> dependencies to POM files. Maven build sub projects successfully except
>> when it tried to build jetty and tomcat CAR plugin. Here are the error
>> messages that I got:
>> 
>> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
>> [INFO]  The Strict Manifest Classpath processing mode is in effect.
>> This option can be altered by specifying
>> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
>> Specify ="true" for more lenient processing such as ignoring missing jars
>> and references that are not spec compliant.
>> 12:50:39,649 INFO  [config] Configuring
>> Service(id=DefaultStatelessContainer, type=Container, provider-id=Default
>> Stateless Container)
>> 12:50:39,653 INFO  [config] Configuring
>> Service(id=DefaultStatefulContainer, type=Container, provider-id=Default
>> Stateful Container)
>> 12:50:39,654 INFO  [config] Configuring
>> Service(id=DefaultSingletonContainer, type=Container, provider-id=Default
>> Singleton Container)
>> 12:50:39,655 INFO  [config] Configuring Service(id=DefaultBMPContainer,
>> type=Container, provider-id=Default BMP Container)
>> 12:50:39,655 INFO  [config] Configuring Service(id=DefaultCMPContainer,
>> type=Container, provider-id=Default CMP Container)
>> 12:50:39,663 INFO  [config] Configuring enterprise application:
>> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
>> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/PayPalNVPProcessor)
>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/NutalkNewOrderBean)
>> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
>> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/SampleBean)
>> 12:50:40,412 INFO  [config] Enterprise application
>> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
>> [INFO]
>> ------------------------------------------------------------------------
>> [ERROR] BUILD ERROR
>> [INFO]
>> ------------------------------------------------------------------------
>> [INFO] could not package plugin
>> 
>> Embedded error: Manifest class path entries must be a valid jar file
>> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar,
>> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>>     looking at: callingcard-war-0.0.1-SNAPSHOT.war    current classpath:
>> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
>> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
>> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
>> ../lib/commons-logging-1.0.4.jar,
>> ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]    ignoring modules:
>> [callingcard-ejb-0.0.1-SNAPSHOT.jar, callingcard-war-0.0.1-SNAPSHOT.war]
>> No such file or directory
>> [INFO]
>> ------------------------------------------------------------------------
>> [INFO] For more information, run Maven with the -e switch
>> [INFO]
>> ------------------------------------------------------------------------
>> [INFO] Total time: 47 seconds
>> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
>> [INFO] Final Memory: 64M/125M
>> [INFO]
>> ------------------------------------------------------------------------
>> die
>> 
>> 
>> Questions:
>> 
>> 1. It seems that I got my first error is that I did not create
>> WEB-INF/geronimo-web.xml. I can define the option
>> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
>> successful. However, I looked at the calculator, it does not have the
>> WEB-INF/geronimo-web.xml but maven does not fail when it builds
>> jetty/tomcat car plugin. So why do I have this error? What do I miss in
>> my pom files?
>> 
>> 2. Can somesome explain what
>> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
>> 
>> Thank for any helps
>> 
>> -B
>> 
>> 
>> 
> 
> 


-----
B Amigo:super:
-- 
View this message in context: http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21390405.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.


Re: Maven build failed with missing WEB-INF/geronimo-web.xml

Posted by bongosdude <bo...@gmail.com>.
After I fixed the manifest classpath problem, maven successfully build my
project. But I still have questions about geronimo-web.xml.

Thanks
-B

Embedded error: Manifest class path entries must be a valid jar file (JAVAEE
5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar, resolved to
targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar



bongosdude wrote:
> 
> Background 
> 
> I encountered this problem that I do not quite understand. I set up my
> demo after I looked at the car-maven-plugin, m2eclipse and the geronimo
> sample calculator. I have manually created my demo project by using maven
> achetype-create with groupId=org.apache.geronimo.samples and
> archytypeId=geronimo-samples-archetypes. And then I tweaked POM files
> generated by looking at calculator POM files. I had to go through this
> manual process because my web application is Tapestry5. And I have to add
> dependencies to POM files. Maven build sub projects successfully except
> when it tried to build jetty and tomcat CAR plugin. Here are the error
> messages that I got:
> 
> [WARN]  Web application callingcard-war-0.0.1-SNAPSHOT.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.
> [INFO]  The Strict Manifest Classpath processing mode is in effect.
> This option can be altered by specifying
> -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
> Specify ="true" for more lenient processing such as ignoring missing jars
> and references that are not spec compliant.
> 12:50:39,649 INFO  [config] Configuring
> Service(id=DefaultStatelessContainer, type=Container, provider-id=Default
> Stateless Container)
> 12:50:39,653 INFO  [config] Configuring
> Service(id=DefaultStatefulContainer, type=Container, provider-id=Default
> Stateful Container)
> 12:50:39,654 INFO  [config] Configuring
> Service(id=DefaultSingletonContainer, type=Container, provider-id=Default
> Singleton Container)
> 12:50:39,655 INFO  [config] Configuring Service(id=DefaultBMPContainer,
> type=Container, provider-id=Default BMP Container)
> 12:50:39,655 INFO  [config] Configuring Service(id=DefaultCMPContainer,
> type=Container, provider-id=Default CMP Container)
> 12:50:39,663 INFO  [config] Configuring enterprise application:
> com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car
> 12:50:40,359 INFO  [OpenEJB] Auto-deploying ejb PayPalNVPProcessor:
> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/PayPalNVPProcessor)
> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb NutalkNewOrderBean:
> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/NutalkNewOrderBean)
> 12:50:40,360 INFO  [OpenEJB] Auto-deploying ejb SampleBean:
> EjbDeployment(deployment-id=callingcard-ejb-0.0.1-SNAPSHOT.jar/SampleBean)
> 12:50:40,412 INFO  [config] Enterprise application
> "com.myvoip.ipservices/callingcard-jetty/0.0.1-SNAPSHOT/car" loaded.
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] could not package plugin
> 
> Embedded error: Manifest class path entries must be a valid jar file
> (JAVAEE 5 Section 8.2): path= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar,
> resolved to targetURI= lib/callingcard-ejb-0.0.1-SNAPSHOT.jar
>     looking at: callingcard-war-0.0.1-SNAPSHOT.war    current classpath:
> [WEB-INF/classes/, ../lib/callingcard-common-0.0.1-SNAPSHOT.jar,
> ../lib/paypal-stubs-4.3.1.jar, ../lib/paypal-base-4.3.1.jar,
> ../lib/commons-lang-2.4.jar, ../lib/spring-2.5.6.jar,
> ../lib/commons-logging-1.0.4.jar,
> ../lib/callingcard-ejb-0.0.1-SNAPSHOT.jar]    ignoring modules:
> [callingcard-ejb-0.0.1-SNAPSHOT.jar, callingcard-war-0.0.1-SNAPSHOT.war]
> No such file or directory
> [INFO]
> ------------------------------------------------------------------------
> [INFO] For more information, run Maven with the -e switch
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 47 seconds
> [INFO] Finished at: Fri Jan 09 12:50:42 EST 2009
> [INFO] Final Memory: 64M/125M
> [INFO]
> ------------------------------------------------------------------------
> die
> 
> 
> Questions:
> 
> 1. It seems that I got my first error is that I did not create
> WEB-INF/geronimo-web.xml. I can define the option
> -DXorg.apache.geronimo.deployment.LenientMFCP=true to make the build
> successful. However, I looked at the calculator, it does not have the
> WEB-INF/geronimo-web.xml but maven does not fail when it builds
> jetty/tomcat car plugin. So why do I have this error? What do I miss in my
> pom files?
> 
> 2. Can somesome explain what
> DXorg.apache.geronimo.deployment.LenientMFCP=true|false does?
> 
> Thank for any helps
> 
> -B
> 
> 
> 


-----
B Amigo:super:
-- 
View this message in context: http://www.nabble.com/Maven-build-failed-with-missing-WEB-INF-geronimo-web.xml-tp21377598s134p21377889.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.