2014-10-20 2 views
0

Я пытаюсь создать клиент веб-службы из WSDL в проекте IBM Websphere Commerce. Я очень новичок в Websphere Commerce. Для этого я следую по умолчанию для Wizard для RAD. Кажется, он создает заглушки и отлично работает, когда я тестировал его из простого класса JAVA. Однако, когда я создавал клиент в WebsphereCommerceServerExtensionsLogic, он выдает ошибку CMN0420E. Нужно ли мне регистрировать клиента или добавлять какие-то JAR-файлы в любой другой модуль (WC или Store). Что мне не хватает? Пожалуйста, ознакомьтесь с подробными журналами ниже:CMN0420E Ошибка Websphere Commerce

0000003b CommerceSrvr E com.ibm.commerce.command.ECCommandTarget executeCommand CMN0420E: The following command exception has occurred during processing: "java.lang.NoSuchMethodError: org/apache/axis/description/ParameterDesc.setOmittable(Z)V". java.lang.NoSuchMethodError: org/apache/axis/description/ParameterDesc.setOmittable(Z)V 
at org.tempuri.BasicHttpBinding_IAuthorizationServiceStub._initOperationDesc1(BasicHttpBinding_IAuthorizationServiceStub.java:30) 
at org.tempuri.BasicHttpBinding_IAuthorizationServiceStub.<clinit>(BasicHttpBinding_IAuthorizationServiceStub.java:20) 
at java.lang.J9VMInternals.initializeImpl(Native Method) 
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200) 
at org.tempuri.AuthorizationServiceLocator.getBasicHttpBinding_IAuthorizationService(AuthorizationServiceLocator.java:55) 
at org.tempuri.AuthorizationServiceLocator.getBasicHttpBinding_IAuthorizationService(AuthorizationServiceLocator.java:50) 
at com.epicor.www.Retail.Store.IAuthorizationServiceProxy._initIAuthorizationServiceProxy(IAuthorizationServiceProxy.java:18) 
at com.epicor.www.Retail.Store.IAuthorizationServiceProxy.<init>(IAuthorizationServiceProxy.java:8) 
at com.trifecta.perfumania.dao.GiftCardDAO.checkBalance(GiftCardDAO.java:99) 
at com.trifecta.perfumania.commands.controller.AddGiftCardCmdImpl.validateGiftCard(AddGiftCardCmdImpl.java:115) 
at com.trifecta.perfumania.commands.controller.AddGiftCardCmdImpl.validateParameters(AddGiftCardCmdImpl.java:47) 
at com.ibm.commerce.command.ECCommandTarget.executeCommand(ECCommandTarget.java:135) 
at com.ibm.websphere.command.TargetableCommandImpl.execute(TargetableCommandImpl.java:139) 
at com.ibm.websphere.command.CacheableCommandImpl.execute(CacheableCommandImpl.java:138) 
at com.ibm.commerce.command.AbstractECTargetableCommand.execute(AbstractECTargetableCommand.java:217) 
at com.ibm.commerce.component.BaseComponentImpl.executeCommand(BaseComponentImpl.java:202) 
at com.ibm.commerce.component.WebAdapterComponentImpl.executeCommand(WebAdapterComponentImpl.java:46) 
at com.ibm.commerce.component.objimpl.WebAdapterServiceBeanBase.executeCommand(WebAdapterServiceBeanBase.java:58) 
at com.ibm.commerce.component.objects.EJSLocalStatelessWebAdapterService_ce749a4a.executeCommand(EJSLocalStatelessWebAdapterService_ce749a4a.java:31) 
at com.ibm.commerce.component.objects.WebAdapterServiceAccessBean.executeCommand(WebAdapterServiceAccessBean.java:160) 
at com.ibm.commerce.webcontroller.WebControllerHelper.executeCommand(WebControllerHelper.java:2741) 
at com.ibm.commerce.struts.BaseAction.invokeService(BaseAction.java:1516) 
at com.ibm.commerce.struts.BaseAction.executeAction(BaseAction.java:635) 
at com.ibm.commerce.struts.BaseAction.execute(BaseAction.java:150) 
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) 
at com.trifecta.wc.struts.ECRequestProcessor.processCMSPerform(ECRequestProcessor.java:111) 
at com.trifecta.wc.struts.ECRequestProcessor.processActionPerform(ECRequestProcessor.java:77) 
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) 
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) 
at com.ibm.commerce.struts.ECActionServlet.processRequest(ECActionServlet.java:225) 
at com.ibm.commerce.struts.ECActionServlet.doGet(ECActionServlet.java:166) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:718) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:831) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1663) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1597) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131) 
at com.ibm.commerce.campaigns.filter.CampaignsFilter.doFilter(CampaignsFilter.java:148) 
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116) 
at com.ibm.commerce.likeminds.filter.LikeMindsFilter.doFilter(LikeMindsFilter.java:183) 
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116) 
at com.ibm.commerce.dynacache.filter.CacheFilter$1.run(CacheFilter.java:377) 
at com.ibm.commerce.dynacache.filter.CacheFilter.doFilter(CacheFilter.java:508) 
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116) 
at com.ibm.commerce.webcontroller.RuntimeServletFilter.doFilterAction(RuntimeServletFilter.java:724) 
at com.ibm.commerce.webcontroller.RuntimeServletFilter.access$0(RuntimeServletFilter.java:534) 
at com.ibm.commerce.webcontroller.RuntimeServletFilter$1.run(RuntimeServletFilter.java:475) 
at com.ibm.commerce.webcontroller.RuntimeServletFilter.doFilter(RuntimeServletFilter.java:500) 
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77) 
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:934) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502) 
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181) 
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:372) 
at org.tuckey.web.filters.urlrewrite.NormalRewrittenUrl.doRewrite(NormalRewrittenUrl.java:213) 
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:171) 
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145) 
at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92) 
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381) 
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116) 
at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77) 
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:934) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502) 
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181) 
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3935) 
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276) 
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:931) 
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592) 
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:186) 
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452) 
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511) 
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305) 
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83) 
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) 
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) 
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) 
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) 
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) 
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1613) 

ответ

1

Это была проблема с версией управления версией Axis JAR. Я знал это, и я добавил правильный JAR в модуле WebsphereCommerceServerExtensionsLogic, но все же он выдавал ту же ошибку. Ошибка была решена, когда я добавил требуемый JAR в путь к серверу.

0

Для торговли websphere рекомендуется использовать e-core framework eclipse для генерации клиентов webservice. Более громоздко использовать JAX, но он позволяет интегрироваться с платформой обмена сообщениями Websphere Commerce. Это, в свою очередь, позволяет настраивать конечные точки webservice и т. Д. Через консоль администратора.

Если вы попытаетесь это сделать, обратите внимание на setting the ecore EMF Genmodel version и другие атрибуты ecore. Websphere Commerce поддерживает только ecore EMF 2.2 и не поддерживает более поздние версии.

Больше информации и учебник можно найти в Инфоцентр по следующей ссылке: https://www-01.ibm.com/support/knowledgecenter/SSZLC2_7.0.0/com.ibm.commerce.webservices.doc/tutorial/twvoutbound.htm

Смежные вопросы