You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "sendev (Jira)" <ji...@apache.org> on 2020/09/18 18:54:00 UTC

[jira] [Created] (CXF-8340) Graalvm native image fails to run

sendev created CXF-8340:
---------------------------

             Summary: Graalvm native image fails to run
                 Key: CXF-8340
                 URL: https://issues.apache.org/jira/browse/CXF-8340
             Project: CXF
          Issue Type: Bug
          Components: Core
    Affects Versions: 3.3.7
            Reporter: sendev


Hello,

My app is using spring boot 2.3.1 and CXF 3.3.7. I managed to create Graalvm native image, now I am trying to fix the issues that is happening during native image run. Currently I am encountering following issue. Looks like the native image fails when tries to create bean for the soap service. Any help would be appreciated. 

I raised this issue with Spring GraalVM native community and they pointed the issue to CXF. Hence I am reaching out here for help.

[https://github.com/spring-projects-experimental/spring-graalvm-native/issues/273]

 

Here is the config method that creates the soap service

 
{code:java}
@Bean("PublishingServiceClient")
    public PublishingService getPublishingClient(Bus bus, SoapServiceConfig soapServiceConfig) {
        final JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
        factory.setBus(bus);
        factory.setServiceClass(PublishingService.class);
        factory.setAddress(soapServiceConfig.getUrl());
        factory.setServiceName(new QName(name));
        final List<Feature> features = factory.getFeatures();
        if(soapServiceConfig.getMaxNumberOfRetries() > 0) {
            features.add(getFailoverFeature(soapServiceConfig));
        }
        return (PublishingService) factory.create();
    }
	
	private Feature getFailoverFeature(SoapServiceConfig soapServiceConfig) {
        final RetryStrategy retryStrategy = new RetryStrategy();
        retryStrategy.setMaxNumberOfRetries(soapServiceConfig.getMaxNumberOfRetries());
        retryStrategy.setDelayBetweenRetries(soapServiceConfig.getDelayBetweenRetries());
        final List<String> addressList = new LinkedList<>();
        addressList.add(soapServiceConfig.getUrl());
        retryStrategy.setAlternateAddresses(addressList);
        final FailoverFeature failoverFeature = new FailoverFeature();
        failoverFeature.setStrategy(retryStrategy);
        return failoverFeature;
    }
{code}
Here is error while running native image
{code:java}
[2020-09-08 15:43:52.112-0500] [APP]  INFO 23684 --- [main] o.a.c.w.s.f.ReflectionServiceFactoryBean : Creating Service {http://mywebservice.com/publish}PublishingServiceService from class com.mywebservice.publish.PublishingService
Fatal error reported via JNI: JVM_GetSystemPackage called:  Unimplemented
Stacktrace Stage 2:

  SP 00000000007ce680 IP 00007ff7749dbf93  [image code] com.oracle.svm.core.code.IsolateEnterStub.JNIFunctions_FatalError_dea4272cf8e20ff701a0a73f7a6d5d75e3401653(IsolateEnterStub.java:0)
  SP 00000000007ce7c0 IP 00007ff7766cc9f4  [image code] java.lang.Package.getSystemPackage0(Package.java)
  SP 00000000007ce820 IP 00007ff7766cc8bb  [image code] java.lang.Package.getSystemPackage(Package.java:544)
  SP 00000000007ce860 IP 00007ff7766bb44c  [image code] java.lang.ClassLoader.getPackage(ClassLoader.java:1618)
  SP 00000000007ce8b0 IP 00007ff7766bb38b  [image code] java.lang.ClassLoader.getPackage(ClassLoader.java:1616)
  SP 00000000007ce900 IP 00007ff7766bb38b  [image code] java.lang.ClassLoader.getPackage(ClassLoader.java:1616)
  SP 00000000007ce950 IP 00007ff7772a3d9b  [image code] org.apache.cxf.common.util.ASMHelper$TypeHelperClassLoader.defineClass(ASMHelper.java:392)
  SP 00000000007ce9b0 IP 00007ff7772a8ab3  [image code] org.apache.cxf.common.util.ASMHelper.loadClass(ASMHelper.java:321)
  SP 00000000007ce9f0 IP 00007ff7774f2827  [image code] org.apache.cxf.jaxws.WrapperClassGenerator.generatePackageInfo(WrapperClassGenerator.java:267)
  SP 00000000007cea50 IP 00007ff7774ef654  [image code] org.apache.cxf.jaxws.WrapperClassGenerator.createWrapperClass(WrapperClassGenerator.java:169)
  SP 00000000007ceb30 IP 00007ff7774f09be  [image code] org.apache.cxf.jaxws.WrapperClassGenerator.generate(WrapperClassGenerator.java:122)
  SP 00000000007ceb70 IP 00007ff77754cd2c  [image code] org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.generatedWrapperBeanClass(JaxWsServiceFactoryBean.java:672)
  SP 00000000007ceb90 IP 00007ff77754d3a9  [image code] org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.getExtraClass(JaxWsServiceFactoryBean.java:642)
  SP 00000000007cebf0 IP 00007ff777699076  [image code] org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:463)
  SP 00000000007cec80 IP 00007ff77754c131  [image code] org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:693)
  SP 00000000007ceca0 IP 00007ff7776b4182  [image code] org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:529)
  SP 00000000007cece0 IP 00007ff77769ba2b  [image code] org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262)
  SP 00000000007ced10 IP 00007ff77754c2d1  [image code] org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199)
  SP 00000000007ced40 IP 00007ff7772f55a8  [image code] org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103)
  SP 00000000007cedb0 IP 00007ff7772f9796  [image code] org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91)
  SP 00000000007cedf0 IP 00007ff7772fb02a  [image code] org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:159)
  SP 00000000007cee40 IP 00007ff7774df366  [image code] org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142)
  SP 00000000007ceeb0 IP 00007ff7764dd302  [image code] com.myapp.config.CxfConfig.gePublishingClient(CxfConfig.java:71)
  SP 00000000007ceee0 IP 00007ff7750f7c24  [image code] com.oracle.svm.reflect.CxfConfig_gePublishingClient_3d3d3b652097ee9557dd0cbed555428ec2c537c9.invoke(Unknown Source)
  SP 00000000007cef10 IP 00007ff7767445d9  [image code] java.lang.reflect.Method.invoke(Method.java:498)
  SP 00000000007cef40 IP 00007ff7788167ae  [image code] org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
  SP 00000000007cefb0 IP 00007ff7787e2546  [image code] org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:650)
  SP 00000000007ceff0 IP 00007ff7787e29dd  [image code] org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:635)
  SP 00000000007cf110 IP 00007ff7787b3c3e  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1338)
  SP 00000000007cf140 IP 00007ff7787acb88  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177)
  SP 00000000007cf1a0 IP 00007ff7787adbf3  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
  SP 00000000007cf220 IP 00007ff7787abf36  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
  SP 00000000007cf290 IP 00007ff7787cc0f9  [image code] org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
  SP 00000000007cf2c0 IP 00007ff7787bff4e  [image code] org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda$2c40051508af481f3e2b011afbd5800cdeae9fd3.getObject(Unknown Source)
  SP 00000000007cf2d0 IP 00007ff77880713b  [image code] org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:226)
  SP 00000000007cf340 IP 00007ff7787c2fc5  [image code] org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
  SP 00000000007cf3d0 IP 00007ff77879b8a0  [image code] org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
  SP 00000000007cf3d0 IP 00007ff77879b8a0  [image code] org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
  SP 00000000007cf3e0 IP 00007ff7787f53b8  [image code] org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1304)
  SP 00000000007cf460 IP 00007ff7787fffdc  [image code] org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1224)
  SP 00000000007cf4b0 IP 00007ff7787e63c9  [image code] org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:884)
  SP 00000000007cf520 IP 00007ff7787e022b  [image code] org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:788)
  SP 00000000007cf640 IP 00007ff7787dbda9  [image code] org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:227)
  SP 00000000007cf730 IP 00007ff7787aad0f  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1358)
  SP 00000000007cf770 IP 00007ff7787acef0  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
  SP 00000000007cf7d0 IP 00007ff7787adbf3  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:557)
  SP 00000000007cf850 IP 00007ff7787abf36  [image code] org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
  SP 00000000007cf8c0 IP 00007ff7787cc0f9  [image code] org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
  SP 00000000007cf8f0 IP 00007ff7787bff4e  [image code] org.springframework.beans.factory.support.AbstractBeanFactory$$Lambda$2c40051508af481f3e2b011afbd5800cdeae9fd3.getObject(Unknown Source)
  SP 00000000007cf900 IP 00007ff77880713b  [image code] org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:226)
  SP 00000000007cf970 IP 00007ff7787c2fc5  [image code] org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
  SP 00000000007cfa00 IP 00007ff7787fbcfa  [image code] org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
  SP 00000000007cfa00 IP 00007ff7787fbcfa  [image code] org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:893)
  SP 00000000007cfa60 IP 00007ff778a709a1  [image code] org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879)
  SP 00000000007cfaa0 IP 00007ff778a7668a  [image code] org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551)
  SP 00000000007cfb00 IP 00007ff7789fc201  [image code] org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
  SP 00000000007cfb20 IP 00007ff77885b17b  [image code] org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
  SP 00000000007cfb20 IP 00007ff77885b17b  [image code] org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
  SP 00000000007cfb50 IP 00007ff77885b1e9  [image code] org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
  SP 00000000007cfb70 IP 00007ff77885b978  [image code] org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
  SP 00000000007cfbe0 IP 00007ff77885c433  [image code] org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
  SP 00000000007cfc00 IP 00007ff7764da85a  [image code] org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
  SP 00000000007cfc00 IP 00007ff7764da85a  [image code] com.myapps.MainApplication.main(LocalAbeServiceApplication.java:23)
  SP 00000000007cfc70 IP 00007ff7749e917f  [image code] com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:149)
  SP 00000000007cfc70 IP 00007ff7749e917f  [image code] com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:184)
  SP 00000000007cfc70 IP 00007ff7749e917f  [image code] com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_5087f5482cc9a6abc971913ece43acb471d2631b(IsolateEnterStub.java:0)
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)