Hello there,
That .ear structure worked for me in the past. But I can not tell you at
100% if it was because everything was loaded in the same classloader or
just "classloader-lottery". Regarding this tomee doc [1] I would say that
yes.
My ear/META-INF/application.xml looks like:
<application>
<display-name>my-app-ear</display-name>
<module>
<web>
<web-uri>app1.war</web-uri>
<context-root>/app1</context-root>
</web>
</module>
<module>
<web>
<web-uri>app2.war</web-uri>
<context-root>/app2</context-root>
</web>
</module>
<module>
<web>
<web-uri>main-root-webapp.war</web-uri>
<context-root>/</context-root>
</web>
</module>
</application>
Hope it helps,
Luis
[1] http://tomee.apache.org/deploying-in-tomee.html
El mié., 12 dic. 2018 a las 12:55, Jonathan Gallimore (<
[email protected]>) escribió:
> Is the structure?
>
> EAR
> | -- lib/common.jar
> | -- webapp1.war
> | -- webapp2.war
>
> The short answer is I'd have to check. If you have a super simple app I can
> put on a server and debug, I can definitely help. I'd expect the structure
> above to work, although I'd probably have to check specs and do some
> debugging.
>
> Jon
>
> On Wed, Dec 12, 2018 at 11:44 AM Matthew Broadhead
> <[email protected]> wrote:
>
> > when deploying an EAR do the jar files get run in a common classloader?
> > (i.e. shared between all the WARs but only loaded once)
> >
> > when deploying the full thing it stalls on the below error. whereas it
> > works fine if the wars are all packaged and deployed independently with
> > their own libs
> >
> > 12-Dec-2018 12:26:29.695 SEVERE [main]
> > org.apache.openejb.cdi.OpenEJBLifecycle.startApplication CDI Beans
> > module deployment failed
> > org.apache.webbeans.exception.WebBeansDeploymentException:
> > javax.enterprise.inject.UnsatisfiedResolutionException: Api type
> > [uk.me.kissy.external.entities.KeycloakSecurityContextWrapper] is not
> > found with the qualifiers
> > Qualifiers: [@uk.me.kissy.external.qualifiers.KeycloakSecurityContext()]
> > for injection into Field Injection Point, field name :
> > keycloakSecurityContextWrapper, Bean Owner : [UserBean,
> > WebBeansType:MANAGED, Name:userBean, API
> > Types:[java.lang.Object,uk.me
> .kissy.fragment.beans.UserBean,java.io.Serializable],
> >
> >
> >
> Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any,javax.inject.Named]]
> > at
> > org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:338)
> > at
> >
> >
> org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196)
> > at
> >
> >
> org.apache.openejb.cdi.ThreadSingletonServiceImpl.initialize(ThreadSingletonServiceImpl.java:189)
> > at org.apache.openejb.cdi.CdiBuilder.build(CdiBuilder.java:41)
> > at
> >
> >
> org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:963)
> >
> > On 12/12/2018 11:49, Jonathan Gallimore wrote:
> > > Let us know how you get on with the Maven plugin. If that doesn't work,
> > > resolving any issues there would be amazing. The WTP code is here:
> > >
> >
> https://svn.apache.org/repos/asf/tomee/openejb-eclipse-plugin/trunk/plugins/org.apache.openejb.wtp.server/
> > > - it is super old, but I'd love an excuse to revive it :)
> > >
> > > On Wed, Dec 12, 2018 at 10:42 AM Matthew Broadhead
> > > <[email protected]> wrote:
> > >
> > >> i am trying to get the EAR running using tomee-maven-plugin first so
> if
> > >> i see some success with that i will come back to you. out of interest
> > >> is the extension available to look at somewhere?
> > >>
> > >> On 12/12/2018 11:19, Jonathan Gallimore wrote:
> > >>> Are you trying to do it directly in Eclipse? We do have an extension
> to
> > >> WTP
> > >>> that does enable that, but it hasn't been updated for a while. I'd be
> > >> happy
> > >>> to try and contribute that to Eclipse itself if that's what you're
> > >> looking
> > >>> for.
> > >>>
> > >>> Jon
> > >>>
> > >>> On Wed, Dec 12, 2018 at 10:15 AM Matthew Broadhead
> > >>> <[email protected]> wrote:
> > >>>
> > >>>> i created a maven sub module of type ear and added my jar and war
> > files
> > >>>> successfully using
> > >>>>
> > >>
> >
> https://maven.apache.org/plugins/maven-ear-plugin/examples/skinny-wars.html
> > >>>> and
> > >>>>
> > >>>>
> > >>
> >
> https://maven.apache.org/plugins/maven-ear-plugin/examples/eclipse-and-maven-integration.html
> > >> .
> > >>>> but i cannot seem to deploy the ear to a TomEE server. is any way
> to
> > do
> > >>>> this currently?
> > >>>>
> > >>>> i uncommented Deployments as in
> > >>>>
> > >>
> > http://tomee-openejb.979440.n4.nabble.com/Ear-file-deploy-td4673119.html
> > >>>>
> > >>
> >
> >
>
--
"Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better."
- Samuel Beckett