Hi,
I am trying to call a SOAP service from inside my Jira plugin. I currently have a normal setup in my pom file. But I do exclude some imports:
<dependency>
<groupId>com.atlassian.jira</groupId>
<artifactId>jira-func-tests</artifactId>
<version>${jira.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
</exclusion>
<exclusion>
<groupId>com.atlassian.crowd</groupId>
<artifactId>crowd-acceptance-test</artifactId>
</exclusion>
</exclusions>
</dependency>
If I run a local test in my IDE that calls the SOAP service everything works. Once I upload the plugin to JIRA I get the exception:
interface com.sun.xml.internal.ws.developer.WSBindingProvider is not visible from class loader
Can anybody help me fix this?
Kind regards.
Community moderators have prevented the ability to post new answers.
Hi Javier,
Stop wasting your time and use axis 1. It seems the newer library like axis 2 are not osgi ready yet.
For my plugin, I used the dependency
<dependency> <groupId>axis</groupId> <artifactId>axis</artifactId> <version>1.3-atlassian-1</version> <scope>provided</scope> </dependency>
Have a look at this answer: https://answers.atlassian.com/questions/44457/implement-jax-ws-in-jira-5-plugin/97748
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
What version of JIRA are you running against? I tested against JIRA 5.0.7.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Joseph,
I'm writing a plugin against Jira 5.1.8 which needs to call a SOAP service. The stub is generated by CXF 2.7.2. Java version 1.6.0_35.
When the plugin tries to send a request, I always get a interface com.sun.xml.internal.ws.developer.WSBindingProvider is not visible from class loader error
I've tried to update my plugin from your example, but still the same error. Any ideas? I don't know any other solution ? Is there any by the way ? I guess using Axis or Metro will not help at all.
Thx
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Joseph,
I followed your indications and the error changed from
interface com.sun.xml.internal.ws.developer.WSBindingProvider is not visible from class loader
into
javax.xml.ws.WebServiceException: Provider com.sun.xml.ws.spi.ProviderImpl not found
but I can see that this class is present in my jira plugin jar file
jar -tvf connector-1.0-SNAPSHOT.jar | grep com.sun.xml.ws.spi.ProviderImpl 9033 Thu Apr 16 13:54:20 PDT 2009 com/sun/xml/ws/spi/ProviderImpl.class 1282 Thu Apr 16 13:54:20 PDT 2009 com/sun/xml/ws/spi/ProviderImpl$2.class 1666 Thu Apr 16 13:54:20 PDT 2009 com/sun/xml/ws/spi/ProviderImpl$1.class
Googling the error this may be due a class duplication. Is it possible for you to throw some light on this?
I'm developing and testing my plugin with atlassian-plugin-sdk-4.1.2. The jira coming with this sdk is 5.1.8
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Javier,
Stop wasting your time and use axis 1. It seems the newer library like axis 2 are not osgi ready yet.
For my plugin, I used the dependency
< dependency > < groupId >axis</ groupId > < artifactId >axis</ artifactId > < version >1.3-atlassian-1</ version > < scope >provided</ scope > </ dependency > |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I finally asked for help around in my company. A developer told me that this probably was related to the JAXWS and JAXB versions I was using, so I went ahead and updated the versions in the pom file provided by Joseph, in this way
<dependency> <groupId>javax.xml.ws</groupId> <artifactId>jaxws-api</artifactId> <version>2.2.7</version> <exclusions> <exclusion> <groupId>javax.jws</groupId> <artifactId>jsr181</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.2.7</version> <scope>provided</scope> <exclusions> <exclusion> <groupId>javax.xml.stream</groupId> <artifactId>stax-api</artifactId> </exclusion> <exclusion> <groupId>javax.activation</groupId> <artifactId>activation</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.2.4-1</version> </dependency>
It seems to be working now!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.