geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Mulder <ammul...@alumni.princeton.edu>
Subject Re: Reference question
Date Wed, 25 Jan 2006 15:18:26 GMT
Stein,

What OS are you running on?  I think we've seen people have trouble
with extra folders left over on Windows, but not (AFAIK) on other
platforms.

Thanks,
    Aaron

On 1/25/06, Stein Kråbøl <steinkr@tellussoft.com> wrote:
> Finally got my EJBs and my webapp working!!
> Had to pack it in an ear to get classes for the EJB deploy in Geronimo.
> One thing I notised with my webapp:
> When I redeploy it was not properly deleted in config-store.
> Got a lot of folders there like this
> 40
>   war
>     WEB-INF
>        lib
>            helper.jar
> (which is a jar i included in my webapps.)
> Is this right?
> My current webapp folder is 78!
>
> Anyway thanks for all help so far.
>
> Stein Kråbøl
>
>
>
>
> Stein Kråbøl writes:
>
> > The error now:
> >   Error: Unable to distribute my-webapp-1.0.war: Error processing
> >   'remote' element for EJB Reference 'ejb/BCalcREJB' for module
> >   'my-webapp-1.0': Remote interface class not found:
> >   com.tellussoft.Test.BonusCalculator
> > --------------------------------------------------
> > web.xml:
> > ?xml version="1.0" encoding="UTR-8"?>
> > <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
> >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> >        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
> >        version="2.4">
> > still with:
> >   <ejb-ref>
> >       <ejb-ref-name>ejb/BCalcREJB</ejb-ref-name>
> >       <ejb-ref-type>Session</ejb-ref-type>
> >       <home>com.tellussoft.Test.BonusCalculatorHome</home>
> >       <remote>com.tellussoft.Test.BonusCalculator</remote>
> >   </ejb-ref>
> > --------------------------------------------------
> > geronimo-web.xml:
> > ?xml version="1.0" encoding="UTR-8"?>
> > <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.0"
> >        xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
> >        configId="M
> yWebApp-1.0"
> >        parentId="test-ejb-1.0.1">
> > --------------------------------------------------
> > openejb-jar.xml:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <openejb-jar
> > xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.0"
> > xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
> > xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
> > xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.0"
> > xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0"
> > inverseClassloading="false"
> > configId="test-ejb-1.0.1">
> > --------------------------------------------------
> > ejb-jar.xml:
> > <?xml version="1.0" encoding="UTR-8"?>
> > <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
> >   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> >   http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
> >   version="2.1">
> > --------------------------------------------------
> > What about my other question: files in geronimo after deploing?
> > Stein
> >
> > Aaron Mulder writes:
> >
> >> Your ejb-jar.xml should not have a configId or parentId -- those are
> >> Geronimo tags.  So that's causing the error below, and removing that
> >> stuff from ejb-jar.xml should fix it.
> >>
> >> Your openejb-jar.xml correctly has configId="test-ejb-1.0.1" -- that's
> >> good.
> >>
> >> However, your geronimo-web.xml has parentid="test-ebj-1.0.1" -- as
> >> David pointed out this should be parentId not parentid, and also the
> >> value should be test-ejb-1.0.1 (to match the configId in
> >> openejb-jar.xml) and not test-ebj-1.0.1 (which does not match
> >> anything!).
> >>
> >> Thanks,
> >>    Aaron
> >>
> >> On 1/24/06, Stein Kråbøl <steinkr@tellussoft.com> wrote:
> >>> I see what you mean, but this is now the errormessage:
> >>>
> >>>   Invalid deployment descriptor: [error: cvc-complex-type.3.2.1:
> >>>   Attribute not allowed (no wildcards allowed): configId in element
> >>>   web-app@http://java.sun.com/xml/ns/j2ee, error:
> >>>   cvc-complex-type.3.2.1: Attribute not allowed (no wildcards
> >>>   allowed): parentId in element
> >>>   web-app@http://java.sun.com/xml/ns/j2ee]
> >>>  --------------------------------------------------
> >>> Is ther someting with the deployment of the EJB when it's not possible
> >>> to se the classes in Geronimo filesystem?
> >>>
> >>> Stein
> >>>
> >>>
> >>> David Jencks writes:
> >>>
> >>> > According to our deployer the actual plan you are deploying has a
> >>> typo,
> >>> > parentid (lower case i) instead of parentId (upper case I)
> >>> >
> >>> > hope this helps
> >>> > david jencks
> >>> >
> >>> > On Jan 24, 2006, at 8:52 PM, Stein Kråbøl wrote:
> >>> >
> >>> >> Thank you for your response!
> >>> >>
> >>> >> The error now is:
> >>> >> C:\web\geronimo-1.0\bin>deploy --user system --password manager
> >>> deploy
> >>> >> c:\project\my-webapp\target\my-webapp-1.0.war
> >>> >>   Error: Unable to distribute my-webapp-1.0.war: Unable to load
first
> >>> >>   parent of configuration MyWebApp-1.0
> >>> >>       No configuration with id: test-ebj-1.0.1
> >>> >> ------------------------------------------------------
> >>> >> Header of web.xml:
> >>> >> web-app xmlns="http://java.sun.com/xml/ns/j2ee"
> >>> >>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >>> >>        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> >>> >>        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
> >>> >>        version="2.4">
> >>> >> When I put configId and parentID here I got error when deployd:
> >>> >>  Error: Unable to distribute my-webapp-1.0.war: xml problem
> >>> >>      Invalid deployment descriptor: [error: cvc-complex-type.3.2.1:
> >>> >>  Attribute not allowed (no wildcards allowed): parentid]
> >>> >>  Descriptor: <xml-fragment configId="MyWebApp-1.0"
> >>> >>  parentid="test-ebj-1.0.1"
> >>> >>  xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
> >>> >>  xmlns:jet="http://geronimo.apache.org/xml/ns/j2ee/web/jetty-1.0">
> >>> >> It is here I have:
> >>> >>   <ejb-ref>
> >>> >>       <ejb-ref-name>ejb/BCalcREJB</ejb-ref-name>
> >>> >>       <ejb-ref-type>Session</ejb-ref-type>
> >>> >>       <home>com.tellussoft.Test.BonusCalculatorHome</home>
> >>> >>       <remote>com.tellussoft.Test.BonusCalculator</remote>
> >>> >>   </ejb-ref>
> >>> >> --------------------------------------------------------
> >>> >> Header of geronimo.xml:
> >>> >> <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.0"
> >>> >>        xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
> >>> >>        configId="MyWebApp-1.0"
> >>> >>        parentId="test-ebj-1.0.1">
> >>> >> (so this cased the error abowe...)
> >>> >> --------------------------------------------------------
> >>> >> ejb-jar.xml:
> >>> >> <?xml version="1.0" encoding="UTR-8"?>
> >>> >> <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
> >>> >>   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >>> >>   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
> >>> >>   http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
> >>> >>   version="2.1"
> >>> >>   configId="test-ejb-1.0.1">
> >>> >> --------------------------------------------------------
> >>> >> openejb.xml:
> >>> >> <openejb-jar
> >>> >> xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.0"
> >>> >> xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.0"
> >>> >> xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
> >>> >> xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.0"
> >>> >> xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0"
> >>> >> inverseClassloading="false"
> >>> >> configId="test-ejb-1.0.1">
> >>> >> --------------------------------------------------------
> >>> >> Stein
> >>> >> Give me more options please! I'm in a hurry...
> >>> >>
> >>> >> Aaron Mulder writes:
> >>> >>> In your geronimo-web.xml (the one with the EJB reference) add
a
> >>> >>> parentId attribute to the web-app element right after the 
configId.
> >>> The
> >>> >>> parentId of the WAR file should be set to be the  same as the
> >>> >>> configId of the EJB JAR file.  That will add the EJB JAR classes
to
> >>> >>> the class path of the WAR so it should be able to access the
EJB
> >>> >>> classes. Thanks,
> >>> >>>     Aaron On 1/24/06, Stein Kråbøl <steinkr@tellussoft.com>
wrote:
> >>> >>>> The thing is (as posted earlier) that when I put
> >>> >>>>    <ejb-ref>
> >>> >>>>        <ejb-ref-name>ejb/BCalcREJB</ejb-ref-name>
> >>> >>>>        <ejb-ref-type>Session</ejb-ref-type>
> >>> >>>>        <home>com.tellussoft.Test.BonusCalculatorHome</home>
> >>> >>>>        <remote>com.tellussoft.Test.BonusCalculator</remote>
> >>> >>>>    </ejb-ref>
> >>> >>>> I get an error when deploying:
> >>> >>>>    Error: Unable to distribute my-webapp-1.0.war: Error
processing
> >>> >>>>    'remote' element for EJB Reference 'ejb/BCalcREJB' for
module
> >>> >>>>    'MyWebApp-1.0': Remote interface class not found:
> >>> >>>>    com.tellussoft.Test.BonusCalculator
> >>> >>>>  ------------------------------------
> >>> >>>> In my openejb-jar:
> >>> >>>> <enterprise-beans>
> >>> >>>>  <session>
> >>> >>>>     <ejb-name>BCalcREJB</ejb-name>
> >>> >>>>     <jndi-name>ejb/BCalcREJB</jndi-name>
> >>> >>>> </session>
> >>> >>>> </enterprise-beans>
> >>> >>>> Now, I beleave the class files in the ejb.jar fil should
be found
> >>> in
> >>> >>>> the file structure of Geronimo, but they are not there.
> >>> >>>>  ------------------------------------
> >>> >>>> In config-store/index.properties:
> >>> >>>> ...
> >>> >>>> geronimo/client-security/1.0/car=14
> >>> >>>> test-ejb-1.0.1=59
> >>> >>>> geronimo/geronimo-gbean-deployer/1.0/car=17
> >>> >>>> ...
> >>> >>>> and in
> >>> >>>> configstore/59
> >>> >>>>    ejb                    6kb
> >>> >>>>    META-INF/config.ser    18kb
> >>> >>>>  ------------------------------------
> >>> >>>> Structure of test-ejb-1.0.1.jar:
> >>> >>>> META-INF/openejb-jar.xml
> >>> >>>> META-INF/ejb-jar.xml
> >>> >>>> META-INF/MANIFEST.MF
> >>> >>>> com/tellussoft/Test/LocalBonusCalculatorHome.class
> >>> >>>> com/tellussoft/Test/LocalBonusCalculator.class
> >>> >>>> com/tellussoft/Test/BonusCalculatorHome.class
> >>> >>>> com/tellussoft/Test/LocalBonusCalculatorBean.class
> >>> >>>> com/tellussoft/Test/BonusCalculator.class
> >>> >>>>  -------------------------------------
> >>> >>>> What am I doing wrong?
> >>> >>>> I'm a little desperate case I have to get this to work
by tomorrow.
> >>> >>>> Stein
> >>> >>>> Aaron Mulder writes:
> >>> >>>> > You need an EJB Reference in your WAR (in Geronimo,
a web app
> >>> can't
> >>> >>>> > look up an EJB in JNDI unless there's an EJB Reference
in the
> >>> >>>> > web.xml).  It's easiest if your EJB JAR and WAR are
deployed as
> >>> part
> >>> >>>> > of an EAR so you can use an <ejb-link> in the
EJB Reference in
> >>> >>>> web.xml
> >>> >>>> > and then you don't need any Geronimo-specific information.
 If
> >>> the
> >>> >>>> EJB
> >>> >>>> > JAR and WAR are deployed separately, you'll probably
need a
> >>> >>>> > geronimo-web.xml that maps the EJB reference in web.xml
to the
> >>> >>>> correct
> >>> >>>> > EJB in the EJB JAR.  See, for example,
> >>> >>>> >
> >>> >>>> > http://chariotsolutions.com/geronimo/web-plan.html#id2591236
> >>> >>>> > using the geronimo-web.xml syntax described at
> >>> >>>> > http://chariotsolutions.com/geronimo/web-plan.html#web-plan-refs
> >>> >>>> >
> >>> >>>> > Anyway, once your EJB reference is set up, if the
EJB reference
> >>> name
> >>> >>>> > is ejb/BCalcREJB then you'll look it up in JNDI at
> >>> >>>> > java:comp/env/ejb/BCalcREJB (generally, it's java:comp/env/
[name
> >>> of
> >>> >>>> > EJB reference])
> >>> >>>> >
> >>> >>>> > Thanks,
> >>> >>>> >     Aaron
> >>> >>>> >
> >>> >>>> > On 1/24/06, Stein Kråbøl <steinkr@tellussoft.com>
wrote:
> >>> >>>> >> Help!
> >>> >>>> >> I have deployed my first EJB modul without error.
> >>> >>>> >>
> >>> >>>> >> ejb-jar.xml:
> >>> >>>> >>
> >>> >>>> >> <?xml version="1.0" encoding="UTF-8"?>
> >>> >>>> >> <!DOCTYPE ejb-jar PUBLIC
> >>> >>>> >>                 '-//Sun Microsystems, Inc.//DTD
Enterprise
> >>> >>>> JavaBeans 2.0//EN'
> >>> >>>> >>                 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
> >>> >>>> >> <ejb-jar>
> >>> >>>> >>  <enterprise-beans>
> >>> >>>> >>      <session>
> >>> >>>> >>          <display-name>Stateless Session
Bean with Remote
> >>> >>>> >> Interfaces</display-name>
> >>> >>>> >>          <ejb-name>BCalcREJB</ejb-name>
> >>> >>>> >>          <home>com.tellussoft.Test.BonusCalculatorHome</home>
> >>> >>>> >>          <remote>com.tellussoft.Test.BonusCalculator</remote>
> >>> >>>> >> <local-home>com.tellussoft.Test.LocalBonusCalculatorHome</
> >>> >>>> local-home>
> >>> >>>> >>          <local>com.tellussoft.Test.LocalBonusCalculator</local>
> >>> >>>> >>          <ejb-class>com.tellussoft.Test.BonusCalculatorBean</
> >>> >>>> ejb-class>
> >>> >>>> >>          <session-type>Stateless</session-type>
> >>> >>>> >>          <transaction-type>Container</transaction-type>
> >>> >>>> >>      </session>
> >>> >>>> >>  </enterprise-beans>
> >>> >>>> >> </ejb-jar>
> >>> >>>> >>
> >>> >>>> >> I'm trying to connect to it with a servlet in
an standalone war.
> >>> >>>> >> What is the correct syntax for the lookup method?
> >>> >>>> >>                         Object homeObject = context.lookup
> >>> >>>> ("java:comp/ejb/BCalcREJB");
> >>> >>>> >> I have tried all the variants I can think of!
> >>> >>>> >> BCalcREJB
> >>> >>>> >> java:comp/env/ejb/BCalcREJB
> >>> >>>> >> java:comp/env/BCalcREJB
> >>> >>>> >> ejb/BCalcREJB
> >>> >>>> >> Is there any other method to verify JNDI names
tied to a EJBs?
> >>> >>>> >>
> >>> >>>> >> Stein
> >>> >>>> >>
> >>> >>>> >>
> >>> >>>>
> >>> >
> >>>
> >>>
> >
>
>

Mime
View raw message