Index: src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java =================================================================== --- src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java (revision 22872) +++ src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java (working copy) @@ -3,6 +3,7 @@ import java.io.File; import java.util.ArrayList; import java.util.List; +import java.util.StringTokenizer; import org.eclipse.core.commands.ExecutionException; import org.eclipse.core.resources.IFile; @@ -96,7 +97,7 @@ for (String portTypeName : portTypes) { generateImplClass(formatPortTypeName(portTypeName)); String implClsName = getImplPackageName() + "." //$NON-NLS-1$ - + getImplClassName(portTypeName); + + getImplClassName(normalizePortTypeName(portTypeName)); model.addServiceClasses(implClsName); } @@ -129,7 +130,9 @@ @SuppressWarnings("unchecked") protected void generateImplClass(String portTypeName/* , IFile implJavaFile */) throws CoreException, BadLocationException { - + + portTypeName = normalizePortTypeName(portTypeName); + CompilationUnit portTypeCU = getCompilationUnitForInterface(portTypeName); IPackageFragment pack = getImplPakcage(); @@ -480,4 +483,15 @@ return path.makeRelativeTo(project.getProject().getLocation()); } + private String normalizePortTypeName(String name) { + String delims = "_"; //$NON-NLS-1$ + StringTokenizer st = new StringTokenizer(name, delims); + StringBuilder sb = new StringBuilder(); + while (st.hasMoreElements()) { + String s = st.nextToken(); + sb.append(Character.toUpperCase(s.charAt(0))); + sb.append(s.substring(1)); + } + return sb.toString(); + } }