You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by "adam.granger" <ad...@gmail.com> on 2009/10/20 18:46:14 UTC

org.apache.openejb.OpenEJBException: Unable to determine the module type of

Hi,

Tomcat : 5.5.20
OpenEJB : 3.1.2
Java : 1.5.0_18
O/S : Windows XP sp2

I am trying to deploy an EAR where all my ejb and utility jars are in the
root of the EAR file. I get the following error when openejb tries to deploy
the EAR:

2009-10-20 18:25:04,032 - WARN  - Error deploying application
C:\servers\apache-tomcat-5.5.20-openejb\webapps\EMApplicationServiceEAR.ear
org.apache.openejb.OpenEJBException: Unable to determine the module type of
ibatis-common-2.jar: Exception: Unknown module type:
url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar:
Unknown module type:
url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar
	at
org.apache.openejb.config.DeploymentLoader.createAppModule(DeploymentLoader.java:267)
	at
org.apache.openejb.config.DeploymentLoader.load(DeploymentLoader.java:130)
	at
org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.checkHost(TomcatWebAppBuilder.java:467)
	at
org.apache.openejb.tomcat.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:74)
	at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
	at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
	at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
	at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
	at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.openejb.config.UnknownModuleTypeException: Unknown
module type:
url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar
	at
org.apache.openejb.config.DeploymentLoader.discoverModuleType(DeploymentLoader.java:1212)
	at
org.apache.openejb.config.DeploymentLoader.createAppModule(DeploymentLoader.java:254)
	... 9 more

I have a vanilla installation of openejb and tomcat. Suspect it has
something to do with classpath or class loader as the specific jar does not
matter, it just complains about the next one.

Can somebody please help?
-- 
Adam
-- 
View this message in context: http://www.nabble.com/org.apache.openejb.OpenEJBException%3A-Unable-to-determine-the-module-type-of-tp25978552p25978552.html
Sent from the OpenEJB User mailing list archive at Nabble.com.


Re: org.apache.openejb.OpenEJBException: Unable to determine the module type of

Posted by Quintin Beukes <qu...@skywalk.co.za>.
> It's not overt in the Tomcat integration code as essentially Tomcat ignores
> .ear files and we come back and pick them up via our regular ear processing
> code.  We unpack the ear and hand the wars back to Tomcat and deploy the
> rest.

This morning when I woke up it hit me that this had to be the type of
action you're taking. Thanks. If this is the case some of our
applications can be hosted on a pure OpenEJB/Tomcat stack. OpenEJB can
do so much. Everytime I try to think of a JavaEE feature not provided
by or possible via OpenEJB I have to think very carefully.

Q

Re: org.apache.openejb.OpenEJBException: Unable to determine the module type of

Posted by David Blevins <da...@visi.com>.
On Oct 20, 2009, at 12:54 PM, Quintin Beukes wrote:

> For interest sake, what would be the module type of an EAR?

AppModule.

It's not overt in the Tomcat integration code as essentially Tomcat  
ignores .ear files and we come back and pick them up via our regular  
ear processing code.  We unpack the ear and hand the wars back to  
Tomcat and deploy the rest.

-David

>
> On Tue, Oct 20, 2009 at 9:49 PM, David Blevins  
> <da...@visi.com> wrote:
>>
>> On Oct 20, 2009, at 10:23 AM, Quintin Beukes wrote:
>>
>>> As far as I know, OpenEJB for Tomcat doesn't support EARs.
>>
>> It support EARs.  It's just not a popular format as you can put all  
>> the EJBs
>> you like right in WAR file.
>>
>> Adam, try moving the ibatis-common-2.jar to EMApplicationServiceEAR/ 
>> lib/
>> where it will be considered a simple library per Java EE spec  
>> rules. Same
>> would apply to any libraries which are not Java EE modules.
>>
>> If you are dealing with the majority use case of an ear with one  
>> webapp, you
>> do have the option to put all your libraries (even if they are  
>> ejbs) into
>> your webapp WEB-INF/lib/ directory and deploy just the webapp.  We  
>> call this
>> Collapsed EAR (basically the war becomes the ear and ejbs and  
>> servlets all
>> share the same classloader) and is becoming a standard part of Java  
>> EE 6.
>>
>>
>> -David
>>
>>
>>>
>>> On Tue, Oct 20, 2009 at 6:46 PM, adam.granger <adam.granger@gmail.com 
>>> >
>>> wrote:
>>>>
>>>> Hi,
>>>>
>>>> Tomcat : 5.5.20
>>>> OpenEJB : 3.1.2
>>>> Java : 1.5.0_18
>>>> O/S : Windows XP sp2
>>>>
>>>> I am trying to deploy an EAR where all my ejb and utility jars  
>>>> are in the
>>>> root of the EAR file. I get the following error when openejb  
>>>> tries to
>>>> deploy
>>>> the EAR:
>>>>
>>>> 2009-10-20 18:25:04,032 - WARN  - Error deploying application
>>>>
>>>> C:\servers\apache-tomcat-5.5.20-openejb\webapps 
>>>> \EMApplicationServiceEAR.ear
>>>> org.apache.openejb.OpenEJBException: Unable to determine the  
>>>> module type
>>>> of
>>>> ibatis-common-2.jar: Exception: Unknown module type:
>>>>
>>>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/ 
>>>> EMApplicationServiceEAR/ibatis-common-2.jar:
>>>> Unknown module type:
>>>>
>>>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/ 
>>>> EMApplicationServiceEAR/ibatis-common-2.jar
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .openejb 
>>>> .config.DeploymentLoader.createAppModule(DeploymentLoader.java:267)
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .openejb.config.DeploymentLoader.load(DeploymentLoader.java:130)
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .openejb 
>>>> .tomcat 
>>>> .catalina.TomcatWebAppBuilder.checkHost(TomcatWebAppBuilder.java: 
>>>> 467)
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .openejb 
>>>> .tomcat 
>>>> .catalina 
>>>> .GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java: 
>>>> 74)
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .catalina 
>>>> .util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java: 
>>>> 119)
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .catalina.core.ContainerBase.backgroundProcess(ContainerBase.java: 
>>>> 1305)
>>>>       at
>>>>
>>>> org.apache.catalina.core.ContainerBase 
>>>> $ContainerBackgroundProcessor.processChildren(ContainerBase.java: 
>>>> 1569)
>>>>       at
>>>>
>>>> org.apache.catalina.core.ContainerBase 
>>>> $ContainerBackgroundProcessor.processChildren(ContainerBase.java: 
>>>> 1578)
>>>>       at
>>>>
>>>> org.apache.catalina.core.ContainerBase 
>>>> $ContainerBackgroundProcessor.run(ContainerBase.java:1558)
>>>>       at java.lang.Thread.run(Thread.java:595)
>>>> Caused by: org.apache.openejb.config.UnknownModuleTypeException:  
>>>> Unknown
>>>> module type:
>>>>
>>>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/ 
>>>> EMApplicationServiceEAR/ibatis-common-2.jar
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .openejb 
>>>> .config.DeploymentLoader.discoverModuleType(DeploymentLoader.java: 
>>>> 1212)
>>>>       at
>>>>
>>>> org 
>>>> .apache 
>>>> .openejb 
>>>> .config.DeploymentLoader.createAppModule(DeploymentLoader.java:254)
>>>>       ... 9 more
>>>>
>>>> I have a vanilla installation of openejb and tomcat. Suspect it has
>>>> something to do with classpath or class loader as the specific  
>>>> jar does
>>>> not
>>>> matter, it just complains about the next one.
>>>>
>>>> Can somebody please help?
>>>> --
>>>> Adam
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/org.apache.openejb.OpenEJBException%3A-Unable-to-determine-the-module-type-of-tp25978552p25978552.html
>>>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>
>>
>


Re: org.apache.openejb.OpenEJBException: Unable to determine the module type of

Posted by Quintin Beukes <qu...@skywalk.co.za>.
For interest sake, what would be the module type of an EAR?
Quintin Beukes



On Tue, Oct 20, 2009 at 9:49 PM, David Blevins <da...@visi.com> wrote:
>
> On Oct 20, 2009, at 10:23 AM, Quintin Beukes wrote:
>
>> As far as I know, OpenEJB for Tomcat doesn't support EARs.
>
> It support EARs.  It's just not a popular format as you can put all the EJBs
> you like right in WAR file.
>
> Adam, try moving the ibatis-common-2.jar to EMApplicationServiceEAR/lib/
> where it will be considered a simple library per Java EE spec rules. Same
> would apply to any libraries which are not Java EE modules.
>
> If you are dealing with the majority use case of an ear with one webapp, you
> do have the option to put all your libraries (even if they are ejbs) into
> your webapp WEB-INF/lib/ directory and deploy just the webapp.  We call this
> Collapsed EAR (basically the war becomes the ear and ejbs and servlets all
> share the same classloader) and is becoming a standard part of Java EE 6.
>
>
> -David
>
>
>>
>> On Tue, Oct 20, 2009 at 6:46 PM, adam.granger <ad...@gmail.com>
>> wrote:
>>>
>>> Hi,
>>>
>>> Tomcat : 5.5.20
>>> OpenEJB : 3.1.2
>>> Java : 1.5.0_18
>>> O/S : Windows XP sp2
>>>
>>> I am trying to deploy an EAR where all my ejb and utility jars are in the
>>> root of the EAR file. I get the following error when openejb tries to
>>> deploy
>>> the EAR:
>>>
>>> 2009-10-20 18:25:04,032 - WARN  - Error deploying application
>>>
>>> C:\servers\apache-tomcat-5.5.20-openejb\webapps\EMApplicationServiceEAR.ear
>>> org.apache.openejb.OpenEJBException: Unable to determine the module type
>>> of
>>> ibatis-common-2.jar: Exception: Unknown module type:
>>>
>>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar:
>>> Unknown module type:
>>>
>>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar
>>>       at
>>>
>>> org.apache.openejb.config.DeploymentLoader.createAppModule(DeploymentLoader.java:267)
>>>       at
>>>
>>> org.apache.openejb.config.DeploymentLoader.load(DeploymentLoader.java:130)
>>>       at
>>>
>>> org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.checkHost(TomcatWebAppBuilder.java:467)
>>>       at
>>>
>>> org.apache.openejb.tomcat.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:74)
>>>       at
>>>
>>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
>>>       at
>>>
>>> org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
>>>       at
>>>
>>> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
>>>       at
>>>
>>> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
>>>       at
>>>
>>> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
>>>       at java.lang.Thread.run(Thread.java:595)
>>> Caused by: org.apache.openejb.config.UnknownModuleTypeException: Unknown
>>> module type:
>>>
>>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar
>>>       at
>>>
>>> org.apache.openejb.config.DeploymentLoader.discoverModuleType(DeploymentLoader.java:1212)
>>>       at
>>>
>>> org.apache.openejb.config.DeploymentLoader.createAppModule(DeploymentLoader.java:254)
>>>       ... 9 more
>>>
>>> I have a vanilla installation of openejb and tomcat. Suspect it has
>>> something to do with classpath or class loader as the specific jar does
>>> not
>>> matter, it just complains about the next one.
>>>
>>> Can somebody please help?
>>> --
>>> Adam
>>> --
>>> View this message in context:
>>> http://www.nabble.com/org.apache.openejb.OpenEJBException%3A-Unable-to-determine-the-module-type-of-tp25978552p25978552.html
>>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>>
>>>
>>
>
>

Re: org.apache.openejb.OpenEJBException: Unable to determine the module type of

Posted by David Blevins <da...@visi.com>.
On Oct 20, 2009, at 10:23 AM, Quintin Beukes wrote:

> As far as I know, OpenEJB for Tomcat doesn't support EARs.

It support EARs.  It's just not a popular format as you can put all  
the EJBs you like right in WAR file.

Adam, try moving the ibatis-common-2.jar to EMApplicationServiceEAR/ 
lib/ where it will be considered a simple library per Java EE spec  
rules. Same would apply to any libraries which are not Java EE modules.

If you are dealing with the majority use case of an ear with one  
webapp, you do have the option to put all your libraries (even if they  
are ejbs) into your webapp WEB-INF/lib/ directory and deploy just the  
webapp.  We call this Collapsed EAR (basically the war becomes the ear  
and ejbs and servlets all share the same classloader) and is becoming  
a standard part of Java EE 6.


-David


>
> On Tue, Oct 20, 2009 at 6:46 PM, adam.granger  
> <ad...@gmail.com> wrote:
>>
>> Hi,
>>
>> Tomcat : 5.5.20
>> OpenEJB : 3.1.2
>> Java : 1.5.0_18
>> O/S : Windows XP sp2
>>
>> I am trying to deploy an EAR where all my ejb and utility jars are  
>> in the
>> root of the EAR file. I get the following error when openejb tries  
>> to deploy
>> the EAR:
>>
>> 2009-10-20 18:25:04,032 - WARN  - Error deploying application
>> C:\servers\apache-tomcat-5.5.20-openejb\webapps 
>> \EMApplicationServiceEAR.ear
>> org.apache.openejb.OpenEJBException: Unable to determine the module  
>> type of
>> ibatis-common-2.jar: Exception: Unknown module type:
>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/ 
>> EMApplicationServiceEAR/ibatis-common-2.jar:
>> Unknown module type:
>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/ 
>> EMApplicationServiceEAR/ibatis-common-2.jar
>>        at
>> org 
>> .apache 
>> .openejb 
>> .config.DeploymentLoader.createAppModule(DeploymentLoader.java:267)
>>        at
>> org 
>> .apache.openejb.config.DeploymentLoader.load(DeploymentLoader.java: 
>> 130)
>>        at
>> org 
>> .apache 
>> .openejb 
>> .tomcat 
>> .catalina.TomcatWebAppBuilder.checkHost(TomcatWebAppBuilder.java:467)
>>        at
>> org 
>> .apache 
>> .openejb 
>> .tomcat 
>> .catalina 
>> .GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:74)
>>        at
>> org 
>> .apache 
>> .catalina 
>> .util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
>>        at
>> org 
>> .apache 
>> .catalina.core.ContainerBase.backgroundProcess(ContainerBase.java: 
>> 1305)
>>        at
>> org.apache.catalina.core.ContainerBase 
>> $ContainerBackgroundProcessor.processChildren(ContainerBase.java: 
>> 1569)
>>        at
>> org.apache.catalina.core.ContainerBase 
>> $ContainerBackgroundProcessor.processChildren(ContainerBase.java: 
>> 1578)
>>        at
>> org.apache.catalina.core.ContainerBase 
>> $ContainerBackgroundProcessor.run(ContainerBase.java:1558)
>>        at java.lang.Thread.run(Thread.java:595)
>> Caused by: org.apache.openejb.config.UnknownModuleTypeException:  
>> Unknown
>> module type:
>> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/ 
>> EMApplicationServiceEAR/ibatis-common-2.jar
>>        at
>> org 
>> .apache 
>> .openejb 
>> .config.DeploymentLoader.discoverModuleType(DeploymentLoader.java: 
>> 1212)
>>        at
>> org 
>> .apache 
>> .openejb 
>> .config.DeploymentLoader.createAppModule(DeploymentLoader.java:254)
>>        ... 9 more
>>
>> I have a vanilla installation of openejb and tomcat. Suspect it has
>> something to do with classpath or class loader as the specific jar  
>> does not
>> matter, it just complains about the next one.
>>
>> Can somebody please help?
>> --
>> Adam
>> --
>> View this message in context: http://www.nabble.com/org.apache.openejb.OpenEJBException%3A-Unable-to-determine-the-module-type-of-tp25978552p25978552.html
>> Sent from the OpenEJB User mailing list archive at Nabble.com.
>>
>>
>


Re: org.apache.openejb.OpenEJBException: Unable to determine the module type of

Posted by Quintin Beukes <qu...@skywalk.co.za>.
As far as I know, OpenEJB for Tomcat doesn't support EARs.

I had a quick check in the source, and it seems to only support these:
EjbModule
ClientModule
ConnectorModule
WebModule

Quintin Beukes



On Tue, Oct 20, 2009 at 6:46 PM, adam.granger <ad...@gmail.com> wrote:
>
> Hi,
>
> Tomcat : 5.5.20
> OpenEJB : 3.1.2
> Java : 1.5.0_18
> O/S : Windows XP sp2
>
> I am trying to deploy an EAR where all my ejb and utility jars are in the
> root of the EAR file. I get the following error when openejb tries to deploy
> the EAR:
>
> 2009-10-20 18:25:04,032 - WARN  - Error deploying application
> C:\servers\apache-tomcat-5.5.20-openejb\webapps\EMApplicationServiceEAR.ear
> org.apache.openejb.OpenEJBException: Unable to determine the module type of
> ibatis-common-2.jar: Exception: Unknown module type:
> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar:
> Unknown module type:
> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar
>        at
> org.apache.openejb.config.DeploymentLoader.createAppModule(DeploymentLoader.java:267)
>        at
> org.apache.openejb.config.DeploymentLoader.load(DeploymentLoader.java:130)
>        at
> org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.checkHost(TomcatWebAppBuilder.java:467)
>        at
> org.apache.openejb.tomcat.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:74)
>        at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
>        at
> org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
>        at
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
>        at
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
>        at
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
>        at java.lang.Thread.run(Thread.java:595)
> Caused by: org.apache.openejb.config.UnknownModuleTypeException: Unknown
> module type:
> url=file:/C:/servers/apache-tomcat-5.5.20-openejb/webapps/EMApplicationServiceEAR/ibatis-common-2.jar
>        at
> org.apache.openejb.config.DeploymentLoader.discoverModuleType(DeploymentLoader.java:1212)
>        at
> org.apache.openejb.config.DeploymentLoader.createAppModule(DeploymentLoader.java:254)
>        ... 9 more
>
> I have a vanilla installation of openejb and tomcat. Suspect it has
> something to do with classpath or class loader as the specific jar does not
> matter, it just complains about the next one.
>
> Can somebody please help?
> --
> Adam
> --
> View this message in context: http://www.nabble.com/org.apache.openejb.OpenEJBException%3A-Unable-to-determine-the-module-type-of-tp25978552p25978552.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.
>
>