You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by co...@apache.org on 2018/07/05 13:38:23 UTC
[cxf] branch master updated: CXF-7778 - WSDLToJava does not respect
error code conventions in case of error by default
This is an automated email from the ASF dual-hosted git repository.
coheigea pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git
The following commit(s) were added to refs/heads/master by this push:
new da5b01b CXF-7778 - WSDLToJava does not respect error code conventions in case of error by default
da5b01b is described below
commit da5b01b32a59867b48e2b35a9281b3625f58d514
Author: Colm O hEigeartaigh <co...@apache.org>
AuthorDate: Thu Jul 5 12:35:44 2018 +0100
CXF-7778 - WSDLToJava does not respect error code conventions in case of error by default
---
.../org/apache/cxf/tools/java2ws/JavaToWS.java | 2 +-
.../org/apache/cxf/tools/java2ws/JavaToWSTest.java | 157 ++++++++++++++++++---
.../cxf/tools/java2wsdl/JavaToWSFlagTest.java | 65 +++++++--
.../org/apache/cxf/tools/wadlto/WADLToJava.java | 5 +-
.../org/apache/cxf/tools/wsdlto/WSDLToJava.java | 7 +-
.../cxf/tools/wsdlto/jaxws/CodeGenBugTest.java | 96 ++++++++++---
6 files changed, 277 insertions(+), 55 deletions(-)
diff --git a/tools/javato/ws/src/main/java/org/apache/cxf/tools/java2ws/JavaToWS.java b/tools/javato/ws/src/main/java/org/apache/cxf/tools/java2ws/JavaToWS.java
index ed9f7a0..dc6a166 100644
--- a/tools/javato/ws/src/main/java/org/apache/cxf/tools/java2ws/JavaToWS.java
+++ b/tools/javato/ws/src/main/java/org/apache/cxf/tools/java2ws/JavaToWS.java
@@ -98,7 +98,7 @@ public class JavaToWS {
}
private boolean isExitOnFinish() {
- String exit = System.getProperty("exitOnFinish");
+ String exit = System.getProperty("exitOnFinish", "true");
if (StringUtils.isEmpty(exit)) {
return false;
}
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
index c22518a..405f5cb 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
@@ -32,6 +32,7 @@ import org.apache.cxf.common.util.Compiler;
import org.apache.cxf.helpers.FileUtils;
import org.apache.cxf.helpers.XPathUtils;
import org.apache.cxf.staxutils.StaxUtils;
+import org.apache.cxf.tools.common.CommandInterfaceUtils;
import org.apache.cxf.tools.common.ToolContext;
import org.apache.cxf.tools.common.ToolTestBase;
@@ -74,7 +75,10 @@ public class JavaToWSTest extends ToolTestBase {
@Test
public void testVersionOutput() throws Exception {
String[] args = new String[] {"-v"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
assertNotNull(getStdOut());
}
@@ -83,7 +87,9 @@ public class JavaToWSTest extends ToolTestBase {
File wsdlFile = outputFile("tmp.wsdl");
String[] args = new String[] {"-wsdl", "-o", wsdlFile.getAbsolutePath(), "-s", output.getPath(),
"-client", "-server", "org.apache.hello_world_soap12_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
checkStdErr();
assertTrue("Failed to generate WSDL file", wsdlFile.exists());
}
@@ -96,7 +102,10 @@ public class JavaToWSTest extends ToolTestBase {
"-o", output.getPath() + "/cxf2941.wsdl",
org.apache.cxf.tools.fortest.cxf2941.WebResultService.class.getName()
};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
File wrapper = outputFile("org/apache/cxf/tools/fortest/cxf2941/jaxws/HelloStringResponse.java");
String str = FileUtils.getStringFromFile(wrapper);
assertTrue("namespace value in annoataion @XmlElement is not correct",
@@ -114,7 +123,10 @@ public class JavaToWSTest extends ToolTestBase {
"-o", output.getPath() + "/tmp.wsdl",
"org.apache.cxf.tools.fortest.cxf2934.WebParamService"
};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
File wrapper = outputFile("org/apache/cxf/tools/fortest/cxf2934/jaxws/HelloStringResponse.java");
String str = FileUtils.getStringFromFile(wrapper);
assertTrue("namespace value in annoataion @XmlElement is not correct: " + str,
@@ -128,7 +140,10 @@ public class JavaToWSTest extends ToolTestBase {
"-o", output.getPath() + "/tmp.wsdl",
"org.apache.cxf.tools.fortest.cxf1450.WebParamService"
};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
File wrapper = outputFile("org/apache/cxf/tools/fortest/cxf1450/jaxws/HelloStringResponse.java");
String str = FileUtils.getStringFromFile(wrapper);
assertTrue("namespace value in annoataion @XmlElement is not correct: " + str,
@@ -148,7 +163,43 @@ public class JavaToWSTest extends ToolTestBase {
output.getPath(), "-frontend", "jaxws", "-client", "-server",
"-address", "http://localhost:1234/test",
"org.apache.hello_world_doc_lit.Greeter"};
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
+ //checkStdErr();
+ assertTrue("Failed to generate WSDL file", wsdlFile.exists());
+ String str = FileUtils.getStringFromFile(wsdlFile);
+ assertTrue("Port address in generated wsdl is not correct",
+ str.indexOf("http://localhost:1234/test") > -1);
+ File client = outputFile("org/apache/hello_world_doc_lit/GreeterClient.java");
+ str = FileUtils.getStringFromFile(client);
+ assertTrue("Address generated in client side code is not correct",
+ str.indexOf("http://localhost:1234/test") > -1);
+
+ File server = outputFile("org/apache/hello_world_doc_lit/GreeterServer.java");
+ str = FileUtils.getStringFromFile(server);
+ assertTrue("Address generated in server side code is not correct",
+ str.indexOf("http://localhost:1234/test") > -1);
+
+ File impl = outputFile("org/apache/hello_world_doc_lit/GreeterImpl.java");
+ Compiler compiler = new Compiler();
+ String[] files = new String[]{client.getAbsoluteFile().toString(),
+ server.getAbsoluteFile().toString(),
+ impl.getAbsoluteFile().toString()};
+ compiler.setOutputDir(this.classDir);
+ compiler.compileFiles(files);
+ }
+
+ @Test
+ public void testJaxwsFrontendViaMain() throws Exception {
+ File wsdlFile = outputFile("tmp.wsdl");
+ String[] args = new String[] {"-wsdl", "-o", output.getPath() + "/tmp.wsdl", "-s",
+ output.getPath(), "-frontend", "jaxws", "-client", "-server",
+ "-address", "http://localhost:1234/test",
+ "org.apache.hello_world_doc_lit.Greeter"};
JavaToWS.main(args);
+
//checkStdErr();
assertTrue("Failed to generate WSDL file", wsdlFile.exists());
String str = FileUtils.getStringFromFile(wsdlFile);
@@ -179,7 +230,10 @@ public class JavaToWSTest extends ToolTestBase {
output.getPath(), "-frontend", "simple", "-client", "-server",
"-address", "http://localhost:1234/test",
"org.apache.cxf.tools.fortest.simple.Hello"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
File client = outputFile("org/apache/cxf/tools/fortest/simple/HelloPortTypeClient.java");
File server = outputFile("org/apache/cxf/tools/fortest/simple/HelloPortTypeServer.java");
File impl = outputFile("org/apache/cxf/tools/fortest/simple/HelloPortTypeImpl.java");
@@ -211,13 +265,21 @@ public class JavaToWSTest extends ToolTestBase {
}
@Test
- public void testMissingBeans() {
+ public void testMissingBeans() throws Exception {
String[] args = new String[] {"-wsdl", "-o", output.getPath() + "/tmp.wsdl", "-verbose", "-s",
output.getPath(), "-frontend", "jaxws", "-client", "-server",
"-beans", "nobodyHome.xml",
"-beans", "nothing.xml",
"org.apache.hello_world_doc_lit.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
+
String err = getStdErr();
assertTrue("Missing file error message",
err.indexOf("Unable to open bean definition file nobodyHome.xml") >= 0);
@@ -229,7 +291,15 @@ public class JavaToWSTest extends ToolTestBase {
String[] args = new String[] {"-wsdl", "-o", output.getPath() + "/tmp.wsdl", "-verbose", "-s",
output.getPath(), "-frontend", "jaxws", "-client", "-server",
"org.apache.cxf.tools.fortest.HelloWithNoAnno"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
+
assertTrue("Failed to generate WSDL file", wsdlFile.exists());
assertTrue("Class does not carry WebService error should be detected", getStdErr()
.indexOf("does not carry a WebService annotation") > -1);
@@ -241,7 +311,15 @@ public class JavaToWSTest extends ToolTestBase {
String[] args = new String[] {"-wsdl", "-o", output.getPath() + "/tmp.wsdl", "-verbose",
"-s", output.getPath(), "-frontend", "jaxws", "-client", "-server",
"org.apache.cxf.tools.fortest.HelloRMI"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
+
assertTrue("Failed to generate WSDL file", wsdlFile.exists());
assertTrue("Parameter or return type implemented java.rmi.Remote interface error should be detected",
getStdErr().indexOf("implemented the java.rmi.Remote interface") > -1);
@@ -254,7 +332,10 @@ public class JavaToWSTest extends ToolTestBase {
File impl = outputFile("org/apache/hello_world_soap12_http/GreeterImpl.java");
String[] args = new String[] {"-s", output.getPath(), "-client", "-server",
"org.apache.hello_world_soap12_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
checkStdErr();
assertTrue("Client was not generated", client.exists());
assertTrue("Greeter_GreeterPort_Server.java was not generated", server.exists());
@@ -276,7 +357,10 @@ public class JavaToWSTest extends ToolTestBase {
String[] args = new String[] {"-s", output.getPath(), "-server",
"org.apache.hello_world_soap12_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
checkStdErr();
assertTrue("GreeterServer.java was not generated", server.exists());
assertTrue("GreeterImpl.java was not generated", impl.exists());
@@ -294,7 +378,15 @@ public class JavaToWSTest extends ToolTestBase {
public void testInvalidFlag() throws Exception {
String[] args = new String[] {"-frontend", "tmp", "-wsdl", "-o", output.getPath() + "/tmp.wsdl",
"org.apache.hello_world_soap12_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
+
assertTrue("invalid frontend flag should be detected", getStdErr()
.indexOf("is not a valid frontend,") > -1);
}
@@ -304,7 +396,15 @@ public class JavaToWSTest extends ToolTestBase {
String[] args = new String[] {"-frontend", "simple", "-wrapperbean", "-wsdl", "-o",
output.getPath() + "/tmp.wsdl",
"org.apache.hello_world_soap12_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
+
assertTrue("wrapperbean flag error should be detected", getStdErr()
.indexOf("-wrapperbean is only valid for the jaxws front end.") > -1);
}
@@ -315,7 +415,15 @@ public class JavaToWSTest extends ToolTestBase {
"-wsdl", "-o",
output.getPath() + "/tmp.wsdl",
"org.apache.hello_world_soap12_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
+
assertTrue("jaxb databinding warning should be detected", getStdErr()
.indexOf("Simple front end only supports aegis databinding") > -1);
}
@@ -327,7 +435,10 @@ public class JavaToWSTest extends ToolTestBase {
String[] args = new String[] {"-wsdl", "-o", output.getPath() + "/tmp.wsdl", "-verbose", "-s",
output.getPath(), "-frontend", "jaxws", "-client", "-server",
org.apache.cxf.tools.fortest.GreeterImpl.class.getName()};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
assertTrue("Failed to generate WSDL file", wsdlFile.exists());
File sei = outputFile("org/apache/cxf/tools/fortest/GreeterImpl_PortType.java");
@@ -342,7 +453,9 @@ public class JavaToWSTest extends ToolTestBase {
public void testXmlList() throws Exception {
String[] args = new String[] {"-o", output.getPath() + "/xml-list.wsdl", "-verbose",
"-wsdl", "org.apache.cxf.tools.fortest.xmllist.AddNumbersPortType"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
File file = new File(output.getPath() + "/xml-list.wsdl");
@@ -362,7 +475,10 @@ public class JavaToWSTest extends ToolTestBase {
public void testXmlAttachementRef() throws Exception {
String[] args = new String[] {"-o", output.getPath() + "/swa-ref.wsdl", "-verbose",
"-wsdl", "org.apache.attachment.AddNumbersImpl"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
File file = new File(output.getPath() + "/AddNumbers.wsdl");
String str = FileUtils.getStringFromFile(file);
String swaImport = "http://ws-i.org/profiles/basic/1.1/xsd";
@@ -378,7 +494,10 @@ public class JavaToWSTest extends ToolTestBase {
String[] args = new String[] {"-o", output.getPath() + "/xmladapter.wsdl", "-verbose",
"-wsdl", "org.apache.xmladapter.GreeterImpl"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ j2w.run();
+
File file = new File(output.getPath() + "/xmladapter.wsdl");
Document doc = StaxUtils.read(file);
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/JavaToWSFlagTest.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/JavaToWSFlagTest.java
index 92a1866..7bcc3de 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/JavaToWSFlagTest.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/JavaToWSFlagTest.java
@@ -19,6 +19,7 @@
package org.apache.cxf.tools.java2wsdl;
+import org.apache.cxf.tools.common.CommandInterfaceUtils;
import org.apache.cxf.tools.common.ToolTestBase;
import org.apache.cxf.tools.java2ws.JavaToWS;
@@ -35,14 +36,28 @@ public class JavaToWSFlagTest extends ToolTestBase {
@Test
public void testVersionOutput() throws Exception {
String[] args = new String[] {"-v"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertNotNull(getStdOut());
}
@Test
public void testHelpOutput() {
String[] args = new String[] {"-help"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertNotNull(getStdOut());
}
@@ -52,14 +67,28 @@ public class JavaToWSFlagTest extends ToolTestBase {
String[] args = new String[] {"-o",
getLocation("normal.wsdl"),
"org.apache.hello_world_soap_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertNotNull(getStdOut());
}
@Test
public void testBadUsage() {
String[] args = new String[] {"-ttt", "a.ww"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertNotNull(getStdOut());
}
@@ -67,9 +96,15 @@ public class JavaToWSFlagTest extends ToolTestBase {
@Test
public void testValidArgs() {
String[] args = new String[] {"a.ww"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertNotNull(getStdOut());
-
}
@Test
@@ -77,14 +112,28 @@ public class JavaToWSFlagTest extends ToolTestBase {
String[] args = new String[] {"-o",
getLocation("nooutput.wsdl"),
"org.apache.hello_world_soap_http.Greeter"};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertNotNull(getStdOut());
}
@Test
public void testNoArg() {
String[] args = new String[] {};
- JavaToWS.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ JavaToWS j2w = new JavaToWS(args);
+ try {
+ j2w.run();
+ } catch (Throwable ex) {
+ System.err.println("JavaToWS Error: " + ex.toString());
+ System.err.println();
+ }
assertEquals(-1, getStdOut().indexOf("Caused by:"));
}
}
diff --git a/tools/wadlto/jaxrs/src/main/java/org/apache/cxf/tools/wadlto/WADLToJava.java b/tools/wadlto/jaxrs/src/main/java/org/apache/cxf/tools/wadlto/WADLToJava.java
index 33b833f..eeb3b0b 100644
--- a/tools/wadlto/jaxrs/src/main/java/org/apache/cxf/tools/wadlto/WADLToJava.java
+++ b/tools/wadlto/jaxrs/src/main/java/org/apache/cxf/tools/wadlto/WADLToJava.java
@@ -46,7 +46,7 @@ public class WADLToJava {
private boolean isExitOnFinish() {
- String exit = System.getProperty("exitOnFinish");
+ String exit = System.getProperty("exitOnFinish", "true");
if (StringUtils.isEmpty(exit)) {
return false;
}
@@ -118,9 +118,6 @@ public class WADLToJava {
System.exit(1);
}
}
- if (w2j.isExitOnFinish()) {
- System.exit(0);
- }
}
private static InputStream getResourceAsStream(Class<?> clz, String file) {
diff --git a/tools/wsdlto/core/src/main/java/org/apache/cxf/tools/wsdlto/WSDLToJava.java b/tools/wsdlto/core/src/main/java/org/apache/cxf/tools/wsdlto/WSDLToJava.java
index 284bf3e..3af097d 100644
--- a/tools/wsdlto/core/src/main/java/org/apache/cxf/tools/wsdlto/WSDLToJava.java
+++ b/tools/wsdlto/core/src/main/java/org/apache/cxf/tools/wsdlto/WSDLToJava.java
@@ -75,7 +75,7 @@ public class WSDLToJava {
}
private boolean isExitOnFinish() {
- String exit = System.getProperty("exitOnFinish");
+ String exit = System.getProperty("exitOnFinish", "true");
if (StringUtils.isEmpty(exit)) {
return false;
}
@@ -177,7 +177,7 @@ public class WSDLToJava {
public static void main(String[] pargs) {
System.setProperty("org.apache.cxf.JDKBugHacks.defaultUsesCaches", "true");
-
+
CommandInterfaceUtils.commandCommonMain();
WSDLToJava w2j = new WSDLToJava(pargs);
try {
@@ -204,9 +204,6 @@ public class WSDLToJava {
System.exit(1);
}
}
- if (w2j.isExitOnFinish()) {
- System.exit(0);
- }
}
private static InputStream getResourceAsStream(Class<?> clz, String file) {
diff --git a/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java b/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java
index 1e78b75..2517a28 100644
--- a/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java
+++ b/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java
@@ -41,7 +41,9 @@ import javax.xml.ws.WebServiceClient;
import org.apache.cxf.common.i18n.Message;
import org.apache.cxf.helpers.FileUtils;
import org.apache.cxf.helpers.IOUtils;
+import org.apache.cxf.tools.common.CommandInterfaceUtils;
import org.apache.cxf.tools.common.ToolConstants;
+import org.apache.cxf.tools.common.ToolContext;
import org.apache.cxf.tools.common.ToolException;
import org.apache.cxf.tools.util.AnnotationUtil;
import org.apache.cxf.tools.wsdlto.AbstractCodeGenTest;
@@ -242,6 +244,35 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
"http://apache.org/Invoice", "-compile", "-classdir",
output.getCanonicalPath() + "/classes",
getLocation("/wsdl2java_wsdl/hello_world_exclude.wsdl")};
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
+
+ assertNotNull(output);
+ File com = new File(output, "com");
+ assertFalse("Generated file has been excluded", com.exists());
+ File iona = new File(com, "iona");
+ assertFalse("Generated file has been excluded", iona.exists());
+
+ File implFile = new File(output, "org/apache/cxf/w2j/hello_world_soap_http/Greeter.java");
+ String str = FileUtils.getStringFromFile(implFile);
+ assertTrue(str.indexOf("com.iona.BareDocumentResponse") > 0);
+
+ File org = new File(output, "org");
+ File apache = new File(org, "apache");
+ File invoice = new File(apache, "Invoice");
+ assertFalse("Generated file has been excluded", invoice.exists());
+
+ }
+
+ @Test
+ public void testExcludeNSWithPackageNameViaMain() throws Exception {
+
+ String[] args = new String[] {"-d", output.getCanonicalPath(), "-nexclude",
+ "http://apache.org/test/types=com.iona", "-nexclude",
+ "http://apache.org/Invoice", "-compile", "-classdir",
+ output.getCanonicalPath() + "/classes",
+ getLocation("/wsdl2java_wsdl/hello_world_exclude.wsdl")};
WSDLToJava.main(args);
assertNotNull(output);
@@ -267,7 +298,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args = new String[] {"-d", output.getCanonicalPath(), "-nexclude",
"http://apache.org/test/types",
getLocation("/wsdl2java_wsdl/hello_world_exclude.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
File com = new File(output, "test");
@@ -281,7 +314,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
output.getCanonicalPath() + "/classes", "-p", "org.cxf", "-p",
"http://apache.org/hello_world_soap_http/types=org.apache.types",
"-server", "-impl", getLocation("/wsdl2java_wsdl/hello_world.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
Class<?> clz = classLoader.loadClass("org.cxf.Greeter");
assertTrue("Generate " + clz.getName() + "error", clz.isInterface());
@@ -292,7 +327,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args = new String[] {"-dns", "false", "-d", output.getCanonicalPath(), "-noAddressBinding",
getLocation("/wsdl2java_wsdl/basic_callback.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
File org = new File(output, "org");
@@ -315,7 +352,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args = new String[] {"-d", output.getCanonicalPath(), "-noAddressBinding",
getLocation("/wsdl2java_wsdl/basic_callback.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
File org = new File(output, "org");
@@ -341,10 +380,12 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
output.getCanonicalPath(), "-b",
getLocation("/wsdl2java_wsdl/bug305924/binding2.xml"),
getLocation("/wsdl2java_wsdl/bug305924/hello_world.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
} catch (Exception e) {
- fail("Error during wsdl2java: \n" + e.getMessage());
}
+
try {
Class<?> clz = classLoader
.loadClass("org.apache.cxf.w2j.hello_world_soap_http.types.CreateProcess$MyProcess");
@@ -362,7 +403,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
output.getCanonicalPath(), "-b",
getLocation("/wsdl2java_wsdl/bug305924/binding1.xml"),
getLocation("/wsdl2java_wsdl/bug305924/hello_world.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
} catch (Exception e) {
e.printStackTrace(System.err);
}
@@ -447,7 +490,7 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
// CXF-492
@Test
- public void testDefatultNsMap() throws Exception {
+ public void testDefaultNsMap() throws Exception {
env.put(ToolConstants.CFG_ALL, ToolConstants.CFG_ALL);
env.put(ToolConstants.CFG_NO_ADDRESS_BINDING, ToolConstants.CFG_NO_ADDRESS_BINDING);
env.put(ToolConstants.CFG_WSDLURL, getLocation("/wsdl2java_wsdl/cxf492/locator.wsdl"));
@@ -466,7 +509,7 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
}
@Test
- public void testDefatultNsMapExclude() throws Exception {
+ public void testDefaultNsMapExclude() throws Exception {
env.put(ToolConstants.CFG_ALL, ToolConstants.CFG_ALL);
env.put(ToolConstants.CFG_NEXCLUDE,
"http://www.w3.org/2005/08/addressing=org.apache.cxf.ws.addressing");
@@ -516,7 +559,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args = new String[] {"-d", output.getCanonicalPath(), "-p", "org.cxf", "-noAddressBinding",
getLocation("/wsdl2java_wsdl/basic_callback.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
File org = new File(output, "org");
@@ -546,7 +591,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
getLocation("/wsdl2java_wsdl/hello-mime-binding.xml"),
getLocation("/wsdl2java_wsdl/hello-mime.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
String str1 = "SOAPBinding.ParameterStyle.BARE";
String str2 = "javax.xml.ws.Holder";
@@ -1062,7 +1109,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
getLocation("/wsdl2java_wsdl/cxf1662/test.wsdl")};
try {
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
} catch (ToolException tex) {
assertTrue(tex.getMessage().contains(" -p option cannot be used when "
+ "wsdl contains mutiple schemas"));
@@ -1071,7 +1120,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args2 = new String[] {"-d", output.getCanonicalPath(), "-p", "org.cxf",
getLocation("/wsdl2java_wsdl/cxf1662/test2.wsdl")};
try {
- WSDLToJava.main(args2);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args2);
+ w2j.run(new ToolContext());
} catch (ToolException tex) {
assertNull(tex);
}
@@ -1086,7 +1137,10 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
public void testMultiXjcArgs() throws Exception {
String[] args = new String[] {"-d", output.getCanonicalPath(), "-xjc-Xlocator", "-xjc-Xsync-methods",
getLocation("/wsdl2java_wsdl/hello_world.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
+
File file = new File(output, "org/apache/cxf/w2j/hello_world_soap_http/types/SayHi.java");
assertTrue(file.exists());
@@ -1100,7 +1154,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args = new String[] {"-d", output.getCanonicalPath(), "-impl", "-server", "-client",
"-autoNameResolution",
getLocation("/wsdl2java_wsdl/cxf1939/hello_world.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
assertTrue(new File(output, "org/apache/cxf/w2j/hello_world_soap_http/Soap_PortImpl.java").exists());
@@ -1116,7 +1172,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
String[] args = new String[] {"-d", output.getCanonicalPath(), "-impl", "-server", "-client", "-b",
getLocation("/wsdl2java_wsdl/cxf3105/ws-binding.xml"),
getLocation("/wsdl2java_wsdl/cxf3105/cxf3105.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
File f = new File(output, "org/apache/cxf/testcase/cxf3105/Login.java");
@@ -1130,7 +1188,9 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
public void testOverloadWithAction() throws Exception {
String[] args = new String[] {"-d", output.getCanonicalPath(),
getLocation("/wsdl2java_wsdl/hello_world_overload.wsdl")};
- WSDLToJava.main(args);
+ CommandInterfaceUtils.commandCommonMain();
+ WSDLToJava w2j = new WSDLToJava(args);
+ w2j.run(new ToolContext());
assertNotNull(output);
File f = new File(output, "org/apache/cxf/w2j/hello_world_soap_http/SayHi.java");
@@ -1193,7 +1253,7 @@ public class CodeGenBugTest extends AbstractCodeGenTest {
fail("shouldn't get exception");
}
}
-
+
@Test
public void testCXF5280() throws Exception {
env.put(ToolConstants.CFG_ALL, "all");