You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Colm O hEigeartaigh (Jira)" <ji...@apache.org> on 2021/01/04 09:47:04 UTC

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

     [ https://issues.apache.org/jira/browse/CXF-8340?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Colm O hEigeartaigh closed CXF-8340.
------------------------------------

> 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
>            Assignee: Andriy Redko
>            Priority: Major
>              Labels: cxf,, graalvm, native-image
>             Fix For: 3.4.2, 3.3.9, 3.5.0
>
>
> 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)