[英]Spring-boot:run works but java-jar doesn't
該應用程序是一個集成WS(公開一個端點,其操作稱為第三方WS)。 該應用程序可與http正常工作,但是當第三方添加其自己的證書並強制使用https時,它將停止工作。
我已經創建了jks,並且設法生成了第三方wsdl類。 該應用程序編譯並執行mvn spring-boot: run -Djavax.net.ssl.trustStore = MiJks.jks
正常工作。 另一方面,如果使用java -jar Miapp.jar -Djavax.net.ssl.trustStore = MiJks.jks
,則無法創建第三項服務的bean。
為了生成第三個的wsdl代碼,我使用了來自Codehaus的jaxws-maven-plugin。
這是應用程序上下文中bean的定義:
<bean id="teleoptiInternalService"
class="org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean">
<property name="serviceInterface"
value="com.teleopti.ccc.schemas.sdk._2010._04.TeleoptiCccSdkInternal" />
<property name="wsdlDocumentUrl"
value="https://WTWFMWEB01.comunicaciones.tel/TeleoptiWFM/SDK/TeleoptiCccSdkService.svc?wsdl" />
<property name="serviceName" value="TeleoptiCccSdkService" />
<property name="portName" value="TeleoptiOrganizationService1" />
<!-- TODO Endpoint URL should be in a properties file -->
<property name="endpointAddress"
value="https://WTWFMWEB01.comunicaciones.tel/TeleoptiWFM/SDK/TeleoptiCccSdkService.svc" />
<property name="handlerResolver" ref="wsHandlerResolver" />
<property name="portFeatures">
<bean class="org.apache.cxf.feature.LoggingFeature" />
</property>
</bean>
這是顯示的錯誤:
2018-05-28 10:32:55.623 WARN 2172 --- [ main] o.s.b.f.s.DefaultListableBeanFactory : Bean creation exception on non-lazy FactoryBean type check: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teleoptiInternalService' defined in class path resource [applicationContext-teleopti-integration.xml]: Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: org.apache.cxf.service.factory.ServiceConstructionException: Failed to create service.
怎么了? 通過maven運行Java和直接運行Java有什么區別?
謝謝
解決方案:在執行Java命令時將-D放在-jar之前
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.