Author: boisvert Date: Fri Apr 13 08:15:06 2007 New Revision: 528518 URL: http://svn.apache.org/viewvc?view=rev&rev=528518 Log: Better error reporting for invalid/missing portTypes on partnerLinkTypes
Modified: incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java Modified: incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java?view=diff&rev=528518&r1=528517&r2=528518 ============================================================================== --- incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java (original) +++ incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/BpelCompiler.java Fri Apr 13 08:15:06 2007 @@ -946,7 +946,10 @@ if (myRole == null) throw new CompilationException(__cmsgs.errUndeclaredRole(plink.getMyRole(), plinkType.getName())); oplink.myRoleName = myRole.getName(); - oplink.myRolePortType = resolvePortType(myRole.getPortType()); + QName portType = myRole.getPortType(); + if (portType == null) + throw new CompilationException(__cmsgs.errMissingMyRolePortType(portType, plink.getMyRole(), plinkType.getName())); + oplink.myRolePortType = resolvePortType(portType); } if (plink.isInitializePartnerRole() && !plink.hasPartnerRole()) { @@ -958,7 +961,10 @@ throw new CompilationException(__cmsgs.errUndeclaredRole(plink.getPartnerRole(), plinkType .getName())); oplink.partnerRoleName = partnerRole.getName(); - oplink.partnerRolePortType = resolvePortType(partnerRole.getPortType()); + QName portType = partnerRole.getPortType(); + if (portType == null) + throw new CompilationException(__cmsgs.errMissingPartnerRolePortType(portType, plink.getPartnerRole(), plinkType.getName())); + oplink.partnerRolePortType = resolvePortType(portType); } oplink.declaringScope = _structureStack.topScope(); Modified: incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java?view=diff&rev=528518&r1=528517&r2=528518 ============================================================================== --- incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java (original) +++ incubator/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java Fri Apr 13 08:15:06 2007 @@ -433,4 +433,13 @@ public CompilationMessage errProcessNamespaceNotSpecified() { return this.formatCompilationMessage("The process namespace was not specified."); } + + public CompilationMessage errMissingMyRolePortType(QName portType, String myRole, QName plnkType) { + return formatCompilationMessage("Missing portType {0} on partnerLinkType {1} for myRole {2}", portType, plnkType, myRole); + } + + public CompilationMessage errMissingPartnerRolePortType(QName portType, String partnerRole, QName plnkType) { + return formatCompilationMessage("Missing portType {0} on partnerLinkType {1} for partnerRole {2}", portType, plnkType, partnerRole); + } + }