You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Greg Logan (JIRA)" <ji...@apache.org> on 2009/06/17 17:34:07 UTC

[jira] Created: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
-------------------------------------------------------------------

                 Key: AXIS2-4389
                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
    Affects Versions: 1.5
         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
            Reporter: Greg Logan
            Priority: Blocker


>From the mailing list:
I'm having this weird problem when I try and use certain Axis2 web
 services, but not others.  What I'm trying to do is make a call, and
 have the service return data from the DB using JPA queries via
 Eclipselink.  Unfortunately Axis appears to be throwing
 NullPointerExceptions for some of the calls and I have no idea why.

 I've attached the full exception text, but the top few lines are thus:

 [ERROR] java.lang.NullPointerException
 org.apache.axiom.om.OMException: java.lang.NullPointerException
    at
 org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
    at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)

 which is generated in response to the function:

    public Act[] getAllScenes(Common common) throws Exception {

        //get the entity manager and begin a transaction
        EntityManager em = emf.createEntityManager();

        //Find the appropriate video
        Episode ep = em.find(Episode.class, common.getVideoid());

    ...

    //Get the list of acts in the video
        List<Act> results = t.getScenes();
        if (results == null) {
            logger.debug("Error: No list of acts found");
            return null;
        }

    //Sort them into the appropriate order and return
        Act[] ary = new Act[results.size()];
        results.toArray(ary);
        Arrays.sort(ary);
        em.close();
        return ary;
    }

 I've tried playing the debug-statement game, and I found that the line
 throwing the exception is sometime *after* the return statement -
 everything else is valid, including the data being pulled from the DB.

 On the flip side, I have a very similar function in a different service
 (but still the same Eclipse project, persistence unit, build script and
 deployed WAR file) which works fine for no apparent reason.

 Is there something here that I'm doing wrong, or anything that stands
 out?  I've been blocked on this for a couple of days now and I would
 really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Posted by "Greg Logan (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-4389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Greg Logan updated AXIS2-4389:
------------------------------

    Attachment: catalina.out

The stack trace.

> Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4389
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.5
>         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
>            Reporter: Greg Logan
>            Priority: Blocker
>         Attachments: catalina.out
>
>
> From the mailing list:
> I'm having this weird problem when I try and use certain Axis2 web
>  services, but not others.  What I'm trying to do is make a call, and
>  have the service return data from the DB using JPA queries via
>  Eclipselink.  Unfortunately Axis appears to be throwing
>  NullPointerExceptions for some of the calls and I have no idea why.
>  I've attached the full exception text, but the top few lines are thus:
>  [ERROR] java.lang.NullPointerException
>  org.apache.axiom.om.OMException: java.lang.NullPointerException
>     at
>  org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
>     at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
>  which is generated in response to the function:
>     public Act[] getAllScenes(Common common) throws Exception {
>         //get the entity manager and begin a transaction
>         EntityManager em = emf.createEntityManager();
>         //Find the appropriate video
>         Episode ep = em.find(Episode.class, common.getVideoid());
>     ...
>     //Get the list of acts in the video
>         List<Act> results = t.getScenes();
>         if (results == null) {
>             logger.debug("Error: No list of acts found");
>             return null;
>         }
>     //Sort them into the appropriate order and return
>         Act[] ary = new Act[results.size()];
>         results.toArray(ary);
>         Arrays.sort(ary);
>         em.close();
>         return ary;
>     }
>  I've tried playing the debug-statement game, and I found that the line
>  throwing the exception is sometime *after* the return statement -
>  everything else is valid, including the data being pulled from the DB.
>  On the flip side, I have a very similar function in a different service
>  (but still the same Eclipse project, persistence unit, build script and
>  deployed WAR file) which works fine for no apparent reason.
>  Is there something here that I'm doing wrong, or anything that stands
>  out?  I've been blocked on this for a couple of days now and I would
>  really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-4389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen reassigned AXIS2-4389:
--------------------------------------

    Assignee: Andreas Veithen

> Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4389
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.5
>         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
>            Reporter: Greg Logan
>            Assignee: Andreas Veithen
>            Priority: Blocker
>         Attachments: catalina.out
>
>
> From the mailing list:
> I'm having this weird problem when I try and use certain Axis2 web
>  services, but not others.  What I'm trying to do is make a call, and
>  have the service return data from the DB using JPA queries via
>  Eclipselink.  Unfortunately Axis appears to be throwing
>  NullPointerExceptions for some of the calls and I have no idea why.
>  I've attached the full exception text, but the top few lines are thus:
>  [ERROR] java.lang.NullPointerException
>  org.apache.axiom.om.OMException: java.lang.NullPointerException
>     at
>  org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
>     at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
>  which is generated in response to the function:
>     public Act[] getAllScenes(Common common) throws Exception {
>         //get the entity manager and begin a transaction
>         EntityManager em = emf.createEntityManager();
>         //Find the appropriate video
>         Episode ep = em.find(Episode.class, common.getVideoid());
>     ...
>     //Get the list of acts in the video
>         List<Act> results = t.getScenes();
>         if (results == null) {
>             logger.debug("Error: No list of acts found");
>             return null;
>         }
>     //Sort them into the appropriate order and return
>         Act[] ary = new Act[results.size()];
>         results.toArray(ary);
>         Arrays.sort(ary);
>         em.close();
>         return ary;
>     }
>  I've tried playing the debug-statement game, and I found that the line
>  throwing the exception is sometime *after* the return statement -
>  everything else is valid, including the data being pulled from the DB.
>  On the flip side, I have a very similar function in a different service
>  (but still the same Eclipse project, persistence unit, build script and
>  deployed WAR file) which works fine for no apparent reason.
>  Is there something here that I'm doing wrong, or anything that stands
>  out?  I've been blocked on this for a couple of days now and I would
>  really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Posted by "Greg Logan (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-4389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12720862#action_12720862 ] 

Greg Logan commented on AXIS2-4389:
-----------------------------------

Ok, progress.  I did have a missing getter for a class property that we did not wish to expose.  This worked fine in Glassfish, which is why I expected it to work here.  Once I added the getter it no longer throws any exceptions.  Instead it seems to become stuck in a loop and never returns any data, fault or otherwise.  I added the following at line 238 in BeanUtil.java:

System.out.println(beanInfo.getBeanDescriptor().getBeanClass().getName() + " " + property.getName());

The output (and stack trace) now looks like:

ca.recollect.entities.transitions.Act transitionList
ca.recollect.entities.transitions.TransitionList episode
ca.recollect.entities.Episode series
ca.recollect.entities.Episode transitionList
ca.recollect.entities.Episode uuid

with the last three lines repeating.  I believe this is caused by loops in our entity classes since it appears to be recursing in the @OneToOne link between my Episode and TransitionList classes.

Should troubleshooting this continue on inside this bug, or should I go back to the mailing list?

> Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4389
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.5
>         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
>            Reporter: Greg Logan
>            Priority: Blocker
>         Attachments: catalina.out
>
>
> From the mailing list:
> I'm having this weird problem when I try and use certain Axis2 web
>  services, but not others.  What I'm trying to do is make a call, and
>  have the service return data from the DB using JPA queries via
>  Eclipselink.  Unfortunately Axis appears to be throwing
>  NullPointerExceptions for some of the calls and I have no idea why.
>  I've attached the full exception text, but the top few lines are thus:
>  [ERROR] java.lang.NullPointerException
>  org.apache.axiom.om.OMException: java.lang.NullPointerException
>     at
>  org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
>     at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
>  which is generated in response to the function:
>     public Act[] getAllScenes(Common common) throws Exception {
>         //get the entity manager and begin a transaction
>         EntityManager em = emf.createEntityManager();
>         //Find the appropriate video
>         Episode ep = em.find(Episode.class, common.getVideoid());
>     ...
>     //Get the list of acts in the video
>         List<Act> results = t.getScenes();
>         if (results == null) {
>             logger.debug("Error: No list of acts found");
>             return null;
>         }
>     //Sort them into the appropriate order and return
>         Act[] ary = new Act[results.size()];
>         results.toArray(ary);
>         Arrays.sort(ary);
>         em.close();
>         return ary;
>     }
>  I've tried playing the debug-statement game, and I found that the line
>  throwing the exception is sometime *after* the return statement -
>  everything else is valid, including the data being pulled from the DB.
>  On the flip side, I have a very similar function in a different service
>  (but still the same Eclipse project, persistence unit, build script and
>  deployed WAR file) which works fine for no apparent reason.
>  Is there something here that I'm doing wrong, or anything that stands
>  out?  I've been blocked on this for a couple of days now and I would
>  really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Posted by "Greg Logan (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-4389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12720755#action_12720755 ] 

Greg Logan commented on AXIS2-4389:
-----------------------------------

I've added a line in my local copy of Axis that should output the name of the property that's causing the problem, but it's still building so this might take a bit.

> Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4389
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.5
>         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
>            Reporter: Greg Logan
>            Priority: Blocker
>         Attachments: catalina.out
>
>
> From the mailing list:
> I'm having this weird problem when I try and use certain Axis2 web
>  services, but not others.  What I'm trying to do is make a call, and
>  have the service return data from the DB using JPA queries via
>  Eclipselink.  Unfortunately Axis appears to be throwing
>  NullPointerExceptions for some of the calls and I have no idea why.
>  I've attached the full exception text, but the top few lines are thus:
>  [ERROR] java.lang.NullPointerException
>  org.apache.axiom.om.OMException: java.lang.NullPointerException
>     at
>  org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
>     at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
>  which is generated in response to the function:
>     public Act[] getAllScenes(Common common) throws Exception {
>         //get the entity manager and begin a transaction
>         EntityManager em = emf.createEntityManager();
>         //Find the appropriate video
>         Episode ep = em.find(Episode.class, common.getVideoid());
>     ...
>     //Get the list of acts in the video
>         List<Act> results = t.getScenes();
>         if (results == null) {
>             logger.debug("Error: No list of acts found");
>             return null;
>         }
>     //Sort them into the appropriate order and return
>         Act[] ary = new Act[results.size()];
>         results.toArray(ary);
>         Arrays.sort(ary);
>         em.close();
>         return ary;
>     }
>  I've tried playing the debug-statement game, and I found that the line
>  throwing the exception is sometime *after* the return statement -
>  everything else is valid, including the data being pulled from the DB.
>  On the flip side, I have a very similar function in a different service
>  (but still the same Eclipse project, persistence unit, build script and
>  deployed WAR file) which works fine for no apparent reason.
>  Is there something here that I'm doing wrong, or anything that stands
>  out?  I've been blocked on this for a couple of days now and I would
>  really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-4389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen resolved AXIS2-4389.
------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.6

Modified BeanUtil#getPropertyQnameList to consistently throw an exception when a bean property is not readable (has no getter).

Concerning your last question: ADB doesn't support object graphs with cycles. If you have further questions, please use the mailing list.

> Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4389
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.5
>         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
>            Reporter: Greg Logan
>            Assignee: Andreas Veithen
>            Priority: Blocker
>             Fix For: 1.6
>
>         Attachments: catalina.out
>
>
> From the mailing list:
> I'm having this weird problem when I try and use certain Axis2 web
>  services, but not others.  What I'm trying to do is make a call, and
>  have the service return data from the DB using JPA queries via
>  Eclipselink.  Unfortunately Axis appears to be throwing
>  NullPointerExceptions for some of the calls and I have no idea why.
>  I've attached the full exception text, but the top few lines are thus:
>  [ERROR] java.lang.NullPointerException
>  org.apache.axiom.om.OMException: java.lang.NullPointerException
>     at
>  org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
>     at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
>  which is generated in response to the function:
>     public Act[] getAllScenes(Common common) throws Exception {
>         //get the entity manager and begin a transaction
>         EntityManager em = emf.createEntityManager();
>         //Find the appropriate video
>         Episode ep = em.find(Episode.class, common.getVideoid());
>     ...
>     //Get the list of acts in the video
>         List<Act> results = t.getScenes();
>         if (results == null) {
>             logger.debug("Error: No list of acts found");
>             return null;
>         }
>     //Sort them into the appropriate order and return
>         Act[] ary = new Act[results.size()];
>         results.toArray(ary);
>         Arrays.sort(ary);
>         em.close();
>         return ary;
>     }
>  I've tried playing the debug-statement game, and I found that the line
>  throwing the exception is sometime *after* the return statement -
>  everything else is valid, including the data being pulled from the DB.
>  On the flip side, I have a very similar function in a different service
>  (but still the same Eclipse project, persistence unit, build script and
>  deployed WAR file) which works fine for no apparent reason.
>  Is there something here that I'm doing wrong, or anything that stands
>  out?  I've been blocked on this for a couple of days now and I would
>  really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-4389) Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-4389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12720734#action_12720734 ] 

Andreas Veithen commented on AXIS2-4389:
----------------------------------------

The interesting part of the stacktrace is actually this:

Caused by: java.lang.NullPointerException
    at org.apache.axis2.databinding.utils.BeanUtil.getPropertyQnameList(BeanUtil.java:239)

Source code of the 1.5 version of this class is here:

https://svn.apache.org/repos/asf/webservices/axis2/tags/java/v1.5/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java

The exception is obviously caused by a bean property that is not readable, i.e. has no getter. This might be caused by a property that has been added by the JPA implementation when enhancing the class. We should fix the code to throw a proper exception instead of NullPointerException. That will give the user more information about what is going on.

> Axis2 1.5 + EclipseLink + Tomcat 6 = Exceptions, but only sometimes
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4389
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4389
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.5
>         Environment: Windows XP SP3/Ubuntu 9.04 64bit server, Tomcat 6.0.x, Eclipse 3.4.2, Axis 1.5
>            Reporter: Greg Logan
>            Priority: Blocker
>         Attachments: catalina.out
>
>
> From the mailing list:
> I'm having this weird problem when I try and use certain Axis2 web
>  services, but not others.  What I'm trying to do is make a call, and
>  have the service return data from the DB using JPA queries via
>  Eclipselink.  Unfortunately Axis appears to be throwing
>  NullPointerExceptions for some of the calls and I have no idea why.
>  I've attached the full exception text, but the top few lines are thus:
>  [ERROR] java.lang.NullPointerException
>  org.apache.axiom.om.OMException: java.lang.NullPointerException
>     at
>  org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:260)
>     at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:335)
>  which is generated in response to the function:
>     public Act[] getAllScenes(Common common) throws Exception {
>         //get the entity manager and begin a transaction
>         EntityManager em = emf.createEntityManager();
>         //Find the appropriate video
>         Episode ep = em.find(Episode.class, common.getVideoid());
>     ...
>     //Get the list of acts in the video
>         List<Act> results = t.getScenes();
>         if (results == null) {
>             logger.debug("Error: No list of acts found");
>             return null;
>         }
>     //Sort them into the appropriate order and return
>         Act[] ary = new Act[results.size()];
>         results.toArray(ary);
>         Arrays.sort(ary);
>         em.close();
>         return ary;
>     }
>  I've tried playing the debug-statement game, and I found that the line
>  throwing the exception is sometime *after* the return statement -
>  everything else is valid, including the data being pulled from the DB.
>  On the flip side, I have a very similar function in a different service
>  (but still the same Eclipse project, persistence unit, build script and
>  deployed WAR file) which works fine for no apparent reason.
>  Is there something here that I'm doing wrong, or anything that stands
>  out?  I've been blocked on this for a couple of days now and I would
>  really like to be able to make some progress again :)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.