geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kevan Miller <kevan.mil...@gmail.com>
Subject Re: Deployment blues
Date Wed, 01 Sep 2010 00:50:39 GMT

On Aug 31, 2010, at 8:01 PM, Rick McGuire wrote:

> On 8/31/2010 5:09 PM, David Jencks wrote:
>> I haven't looked into what is going on here in detail but I suspect some annotation
or annotation related class is missing.  The code throwing the exception is part of the jvm
so I'm afraid we aren't likely to be able to come up with a directly better exception, but
it might be possible to provide more context information in xbean finder about what was being
tried when the exception was thrown.
> 
> Unfortunately, from the stack trace it would appear that this is a result of the reflection
code populating the set of annotations for the class the first time an annotation request
is made using getAnnotation().  I suspect any call to getAnnotation() would trigger the same
exception, so there's probably no additional value to knowing what the getAnnotation() request
is.

Pretty much agree. However, seems like knowing the Classes involved, would at least narrow
the search at little bit...

So, Knut, your .ear is almost definitely missing some classes or a .jar file. The missing
classes result in this really poor exception message. Setting a breakpoint or adding some
debug code to xbean.finder.ClassFinder might help. But ultimately, you're going to have to
review the contents of your .ear. If you post your .ear to a Jira, there's a chance that somebody
will take a look at it, but no guarantees.

> 
> Rick
>> thanks
>> david jencks
>> 
>> On Aug 31, 2010, at 11:30 AM, Knut-HÃ¥vard Aksnes wrote:
>> 
>>> I am using geronimo 2.1.6 with jetty on Microsoft Platform using Java 1.6
>>> 
>>> My probem is that deployment fails with little description on whats wrong. The
problem seems to be annotation related but unfortunately that doesn't help me that much as
nearly all my code in this project is heavily annotated: The ear I try to deploy contains
two web services implemented as JAX-WS stateless session beans, most of the  business logic
is implemented in a number of JPA entities, one method is invoking a remote web service. The
web services have some fairly complex arguments so there are a JAXB component here too with
JAXB classes generated from XSD descriptions.
>>> 
>>> I am mainly looking for more descriptive error messages. The messages I get during
deployment is shown below
>>> 
>>> 
>>> 2010-08-31 20:02:48,903 ERROR [Deployer] Deployment failed due to
>>> java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
>>>     at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:653)
>>>     at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:460)
>>>     at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
>>>     at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
>>>     at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
>>>     at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
>>>     at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
>>>     at java.lang.Class.getAnnotation(Class.java:3029)
>>>     at java.lang.Class.isAnnotationPresent(Class.java:3042)
>>>     at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
>>>     at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:332)
>>>     at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:223)
>>>     at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:167)
>>>     at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:152)
>>>     at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:456)
>>>     at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:641)
>>>     at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:578)
>>>     at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:500)
>>>     at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:595)
>>>     at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:256)
>>>     at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:135)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>     at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
>>>     at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
>>>     at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:867)
>>>     at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>>>     at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
>>>     at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
>>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>     at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
>>>     at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
>>>     at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:867)
>>>     at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>>>     at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
>>>     at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
>>>     at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
>>>     at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1427)
>>>     at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
>>>     at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1265)
>>>     at java.security.AccessController.doPrivileged(Native Method)
>>>     at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1367)
>>>     at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
>>>     at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source)
>>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>     at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
>>>     at sun.rmi.transport.Transport$1.run(Transport.java:159)
>>>     at java.security.AccessController.doPrivileged(Native Method)
>>>     at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>>>     at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>>>     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>>>     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>>>     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>     at java.lang.Thread.run(Thread.java:619)
>> 
> 


Mime
View raw message