|
From: <php...@li...> - 2008-05-02 13:56:52
|
Hello
I'm running:
************************************************************************************************
Apache 2.2.6
PHP 5.2.5
MS Windows server 2003 enterprise edition SP2
Using JavaBridge back-end version: 3.2.1b
Put the JavaBridge.war into the autodeploy folder for the J2EE application server
Copied the php-5.0-java-x86-windows.dll to my PHP/Ext directory and renamed it php_java.dll
Copied my third party .jar files to the JavaBridge.war.
Put require ("java/java.php"); at the start of my script.
************************************************************************************************
I can create third party objects and call methods/functions on them (Java is being called ok so the bridge is functioning)
but when I call a particular function I get the following stack trace:
Exception occured; mixed trace:
java.lang.Exception: Invoke failed: [o(Connection)]->getServerList. Cause: <third_party_code>.sddag.api.exceptions.WSException:
Error connecting to service Responsible VM: 1.5.0_15@http://java.sun.com/
java stack trace:
[o(ByteArrayOutputStream):"java.lang.Exception: Invoke failed: [o(Connection)]->getServerList.
Cause: <third_party_code>.sddag.api.exceptions.WSException:
Error connecting to service Responsible VM:1.5.0_15@http://java.sun.com/
at <third_party_code>.sddag.api.WSConnection.getServerList(Unknown Source)
at <third_party_code>.sddag.api.Connection.getServerList(Unknown Source)
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:585)
at php.java.bridge.JavaBridge.Invoke(JavaBridge.java:1113)
at php.java.bridge.Request.handleRequest(Request.java:342)
at php.java.bridge.Request.handleRequests(Request.java:388)
at php.java.bridge.http.ContextRunner.run(ContextRunner.java:188)
at php.java.bridge.BaseThreadPool$Delegate.run(BaseThreadPool.java:66)
Caused by: <third_party_code>.sddag.api.exceptions.WSException:
Error connecting to service ... 11 more Caused by: java.lang.annotation.AnnotationTypeMismatchException:
Incorrectly typed data found for annotation element public abstract javax.xml.bind.annotation.XmlAccessType
javax.xml.bind.annotation.XmlAccessorType.value() (Found data of type Ljavax/xml/bind/annotation/AccessType;.FIELD)
at sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy.generateException(AnnotationTypeMismatchExceptionProxy.java:38)
at sun.reflect.annotation.AnnotationInvocationHandler.invoke(AnnotationInvocationHandler.java:56) at $Proxy35.value(Unknown Source)
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:585)
at com.sun.xml.bind.v2.model.annotation.LocatableAnnotation.invoke(LocatableAnnotation.java:118)
at $Proxy36.value(Unknown Source)
at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.getAccessType(ClassInfoImpl.java:429)
at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.getProperties(ClassInfoImpl.java:292)
at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.getProperties(RuntimeClassInfoImpl.java:174)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:226)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:98)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:79)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:192)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:93)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:79)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:298)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:313)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:432)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.(JAXBContextImpl.java:286)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:139)
at com.sun.xml.bind.api.JAXBRIContext.newInstance(JAXBRIContext.java:105)
at com.sun.xml.ws.model.AbstractSEIModelImpl$1.run(AbstractSEIModelImpl.java:146)
at com.sun.xml.ws.model.AbstractSEIModelImpl$1.run(AbstractSEIModelImpl.java:145)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:144)
at com.sun.xml.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:83)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:260)
at com.sun.xml.ws.client.WSServiceDelegate.addSEI(WSServiceDelegate.java:616)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:319)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:302)
at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:295)
at javax.xml.ws.Service.getPort(Service.java:92)
at <third_party_code>.sddag.jwsdpclient.healthcheck.HealthCheck.getHealthCheckMethod(HealthCheck.java:54)
at <third_party_code>.sddag.api.WSConnection$9LocalThread.run(Unknown Source) "]
The third party code uses java vers. 1.5.0_15.
Does this need to be referenced in some way or should the bridge automatically handle this?
Any ideas would be appreciated.
Many thanks
Martin
|
|
From: <php...@li...> - 2008-05-02 15:03:54
|
Hi,
the error message "Incorrectly typed data found for annotation element public abstract"
sounds like a bug in your application code. Or the application missing some required environment
variables.
I suspect one of the usual problems:
* class version problems (java doesn't have a proper module system); try to remove all unnecessary
jar files from the path, and/or start Java with the -verbose option to see which class versions
are loaded.
* the generated dynamic proxy needs some other JVM implementation. Please try to run your Java
application from the console. If that works, simply attach a JavaBridgeRunner to it and call your
application via that port.
The J2EE folder from the source download contains several examples which show how to use the
bridge to connect to a SOAP and EJB service.
Regards,
Jost Boekemeier
Lesen Sie Ihre E-Mails jetzt einfach von unterwegs.
www.yahoo.de/go
|