Fix (APAR): IY64484 Status: Fix Release: WebSphere Business Integration Server Foundation 5.1.1 Operating System: All Supersedes Fixes: None. CMVC defect: IY64484 Byte size of APAR: 12,918 Date: 11/12/2004 Abstract: RuntimeFaultException when executing a business process that contains a WSDL definition with multiple ports. Description/symptom of problem: 1) Symptom: -------- When executing a business process that contains a WSDL definition with multiple ports, this can lead to a RuntimeFaultException. This exception looks similar to the following: com.ibm.bpe.api.RuntimeFaultException: BPEE0062E: The partner link 'Rm_PortType' cannot be resolved. org.apache.wsif.WSIFException: Please specify a Service. Choices are: {{http://bis.eia.sbc.com/2004/04/RmService.wsdl}RmService, {http://rm.eia.sbc.com/Rm_PortTypeSOAPService/}Rm_PortTypeService} at org.apache.wsif.util.WSIFUtils.getNamedItem(WSIFUtils.java:355) at org.apache.wsif.base.WSIFServiceImpl.init(WSIFServiceImpl.java:859) at org.apache.wsif.base.WSIFServiceImpl.(WSIFServiceImpl.java:336) at org.apache.wsif.base.WSIFServiceImpl.(WSIFServiceImpl.java:299) at org.apache.wsif.base.WSIFServiceImpl.(WSIFServiceImpl.java:288) at org.apache.wsif.base.WSIFServiceFactoryImpl.getService(WSIFServiceFactoryImpl.java:242) at com.ibm.bpe.engine.BpelPartnerLinkHandler.getService(BpelPartnerLinkHandler.java:718) at com.ibm.bpe.engine.BpelPartnerLinkHandler.getPartnerLinkAsWSIFPort(BpelPartnerLinkHandler.java:358) at com.ibm.bpe.engine.BpelActivityKindInvoke.getOperationDescription(BpelActivityKindInvoke.java:650) at com.ibm.bpe.engine.BpelActivityKindInvoke.doActivate(BpelActivityKindInvoke.java:313) at com.ibm.bpe.engine.BpelActivityStateInactive.activateOrSkip(BpelActivityStateInactive.java:100) at com.ibm.bpe.engine.BpelEngineCore.continueControlLink(BpelEngineCore.java:144) at com.ibm.bpe.engine.BpelContinueLinkMessage.execute(BpelContinueLinkMessage.java:73) at com.ibm.bpe.engine.BpelEngine.receiveEvent(BpelEngine.java:279) at com.ibm.bpe.framework.ProcessSessionBean.invokeBpelEngine(ProcessSessionBean.java:399) at com.ibm.bpe.framework.ProcessSessionBean.invokeEngineForTwoWayMicroFlow(ProcessSessionBean.java:283) 2) Problem: -------- The reason for this problem is that the Web Service Invocation Framework (WSIF) needs exactly one port to invoke. When the WSDL definition contains more than one port, WSIF cannot decide which port to invoke. This results in an RuntimeFaultException and the business process fails. 3) Solution: --------- This interim fix narrows the WSDL definition to the port that will be invoked. If this error occurred in an enterprise application, you must re-install the enterprise application after you apply the fix. NOTE: YOU MUST FIRST DOWNLOAD THE UPDATE INSTALLER TOOL IN ORDER TO INSTALL A FIX. The Update Installer can be downloaded from the following link: http://www-3.ibm.com/software/webservers/appserv/support/index.html Directions to apply Fix: 1) Create temporary "Fix" directory to store the jar file: UNIX: /tmp/WebSphere/Fix Windows: c:\temp\WebSphere\Fix 2) Copy jar file to the directory 3) Shutdown WebSphere 4) Follow the Fix installation instructions that are packaged with the Update Installer on how to install the Fix. 5) Restart WebSphere 6) The temp directory may be removed. Directions to remove a Fix: NOTE: FIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED. DO NOT REMOVE A FIX UNLESS ALL FIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED. YOU MAY REAPPLY ANY REMOVED FIX. Example: If your system has fix1, fix2, and fix3 applied in that order and fix2 is to be removed, fix3 must be removed first, fix2 removed, and fix3 re-applied. 1) Shutdown WebSphere 2) Follow the instructions that are packaged with the Update Installer on how to uninstall the Fix. 3) Restart WebSphere Additional Information: ------------------------------------------------------------------