Skip to content

Cannot call Soap service with jax-ws #2188

@troosan

Description

@troosan

Describe GraalVM and your environment :

  • GraalVM version or commit id if built from source: 19.3.1
  • CE or EE: CE
  • Build Time or run time failure: build-time (or runtime if using report-unsupported-elements-at-runtime)
  • JDK version: JDK8
  • Native compiler information:
    Run the following to capture compiler version
    • In windows: cl.exe
    • In macOS : cc -v
    • In Linux: gcc --version
Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin19.4.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
  • Native linker information:
    Run the following to capture linker version
    • In windows: cl.exe
    • In macOS : cc -Wl,-v
    • In Linux: gcc -Wl,--version
@(#)PROGRAM:ld  PROJECT:ld64-530
BUILD 18:57:17 Dec 13 2019
configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
Library search paths:
	/usr/local/lib
	/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib
Framework search paths:
	/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/
Undefined symbols for architecture x86_64:
  "_main", referenced from:
     implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
  • OS and OS Version: macOS Catalina
  • The output of java -Xinternalversion:
OpenJDK 64-Bit GraalVM CE 19.3.1 (25.242-b06-jvmci-19.3-b07) for bsd-amd64 JRE (8u242), built on Jan 13 2020 14:51:05 by "graal" with gcc 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.42)

Have you verified this issue still happens when using the latest snapshot?
Not yet

Describe the issue
Calling a Soap service fails

Steps to reproduce the issue
I created a little test project to reproduce the issue. You can find it here:

  1. Step one: git clone https://github.com/troosan/quarkus-jaxws-client-test.git
  2. Step two: mvn clean package -Pnative

Expected behavior
Service gets called successfuly

Additional context
When adding --report-unsupported-elements-at-runtime the build succeeds, but I get the following error at runtim

Caused by: com.sun.xml.internal.ws.model.RuntimeModelerException: [failed to localize] runtime.modeler.no.operations(org.acme.soap_service.v1.MySoapService)
	at com.sun.xml.internal.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:308)
	at com.sun.xml.internal.ws.db.DatabindingImpl.<init>(DatabindingImpl.java:85)
	at com.sun.xml.internal.ws.db.DatabindingProviderImpl.create(DatabindingProviderImpl.java:59)
	at com.sun.xml.internal.ws.db.DatabindingProviderImpl.create(DatabindingProviderImpl.java:43)
	at com.sun.xml.internal.ws.db.DatabindingFactoryImpl.createRuntime(DatabindingFactoryImpl.java:105)
	at com.sun.xml.internal.ws.client.WSServiceDelegate.buildRuntimeModel(WSServiceDelegate.java:875)
	at com.sun.xml.internal.ws.client.WSServiceDelegate.createSEIPortInfo(WSServiceDelegate.java:892)
	at com.sun.xml.internal.ws.client.WSServiceDelegate.addSEI(WSServiceDelegate.java:855)
	at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:435)
	at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:404)
	at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:386)
	at javax.xml.ws.Service.getPort(Service.java:119)
	at org.acme.soap_service.v1.MySoapService_Service.getMySoapServicePort(MySoapService_Service.java:52)
	at org.acme.ExampleResource.hello(ExampleResource.java:22)

without the option the error is similar

Caused by: com.oracle.svm.hosted.substitute.DeletedElementException: Unsupported method java.lang.ClassLoader.resolveClass(Class) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option --report-unsupported-elements-at-runtime. The unsupported element is then reported at run time when it is accessed the first time.

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions