Author: alessio.soldano(a)jboss.com
Date: 2009-03-12 13:29:52 -0400 (Thu, 12 Mar 2009)
New Revision: 9595
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Employee.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/EmployeeType.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528Endpoint.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528TestCase.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Name.java
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/NameException.java
Log:
[JBWS-2528] Adding testcase
Added: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Employee.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Employee.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Employee.java 2009-03-12
17:29:52 UTC (rev 9595)
@@ -0,0 +1,119 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2528;
+
+public class Employee
+{
+
+ private Name name;
+ private String dept;
+ private Float salary;
+ private String address;
+ private String title;
+ private int type;
+
+ public Employee(Name name, String dept, Float salary, String address, String title,
int type)
+ {
+ this.name = name;
+ this.dept = dept;
+ this.salary = salary;
+ this.address = address;
+ this.title = title;
+ this.type = type;
+ }
+
+ public Employee()
+ {
+ name = new Name();
+ dept = "";
+ salary = 0F;
+ address = "";
+ title = "";
+ type = EmployeeType.PERMANENT;
+ }
+
+ public String toString()
+ {
+ return name + "::" + dept + "::" + salary + "::" +
address + "::" + title + "::" + type;
+ }
+
+ public Name getName()
+ {
+ return name;
+ }
+
+ public void setName(Name name)
+ {
+ this.name = name;
+ }
+
+ public String getDept()
+ {
+ return dept;
+ }
+
+ public void setDept(String dept)
+ {
+ this.dept = dept;
+ }
+
+ public Float getSalary()
+ {
+ return salary;
+ }
+
+ public void setSalary(Float salary)
+ {
+ this.salary = salary;
+ }
+
+ public String getAddress()
+ {
+ return address;
+ }
+
+ public void setAddress(String address)
+ {
+ this.address = address;
+ }
+
+ public String getTitle()
+ {
+ return title;
+ }
+
+ public void setTitle(String title)
+ {
+ this.title = title;
+ }
+
+ public int getType()
+ {
+ return type;
+ }
+
+ public void setType(int type)
+ {
+ this.type = type;
+ }
+
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Employee.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/EmployeeType.java
===================================================================
---
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/EmployeeType.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/EmployeeType.java 2009-03-12
17:29:52 UTC (rev 9595)
@@ -0,0 +1,29 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2528;
+
+public final class EmployeeType
+{
+ public static final int PERMANENT = 0;
+ public static final int TEMP = 1;
+ public static final int CONTRACTOR = 2;
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/EmployeeType.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528Endpoint.java
===================================================================
---
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528Endpoint.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528Endpoint.java 2009-03-12
17:29:52 UTC (rev 9595)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2528;
+
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebService;
+import javax.jws.soap.SOAPBinding;
+
+import javax.xml.ws.Holder;
+
+@WebService
+@SOAPBinding(style = SOAPBinding.Style.RPC, use = SOAPBinding.Use.LITERAL)
+public class JBWS2528Endpoint
+{
+
+ @WebMethod
+ public String hello3(@WebParam(name = "id", targetNamespace =
"hello3/Name", header = true) String name,
+ @WebParam(name = "Name", mode = WebParam.Mode.OUT) Holder<Name>
name2,
+ @WebParam(name = "Employee", mode = WebParam.Mode.INOUT)
Holder<Employee> employee)
+ throws NameException
+ {
+ return "Hello " + name;
+ }
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528Endpoint.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528TestCase.java
===================================================================
---
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528TestCase.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528TestCase.java 2009-03-12
17:29:52 UTC (rev 9595)
@@ -0,0 +1,102 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2528;
+
+import java.io.File;
+import java.net.URL;
+import java.util.List;
+
+import javax.wsdl.Definition;
+import javax.wsdl.Operation;
+import javax.wsdl.PortType;
+import javax.wsdl.factory.WSDLFactory;
+import javax.wsdl.xml.WSDLReader;
+import javax.xml.namespace.QName;
+
+import org.jboss.wsf.test.JBossWSTest;
+
+/**
+ * [JBWS-2528] Missing parameterOrder in portType/operation
+ *
+ *
http://jira.jboss.org/jira/browse/JBWS-2528
+ *
+ * @author alessio.soldano(a)jboss.com
+ * @since 12-Mar-2009
+ */
+public class JBWS2528TestCase extends JBossWSTest
+{
+ private static final String FS = System.getProperty("file.separator"); //
'/' on unix, '\' on windows
+ private static final String PS = System.getProperty("path.separator"); //
':' on unix, ';' on windows
+ private static final String EXT = ":".equals( PS ) ? ".sh" :
".bat";
+
+ private String ENDPOINT_CLASS;
+
+ private String JBOSS_HOME;
+ private String CLASSES_DIR;
+ private String TEST_DIR;
+
+ private String origJavaHome;
+
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+
+ JBOSS_HOME = System.getProperty("jboss.home");
+ CLASSES_DIR = System.getProperty("test.classes.directory");
+ ENDPOINT_CLASS = "org.jboss.test.ws.jaxws.jbws2528.JBWS2528Endpoint";
+ TEST_DIR = createResourceFile("..").getAbsolutePath();
+ origJavaHome = System.getProperty("java.home");
+
+
+ // the script requires the system JAVA_HOME, which points to the JDK not the JRE
+ if(origJavaHome.indexOf(FS + "jre")!=-1)
+ {
+ String JDK_HOME = origJavaHome.substring(0, origJavaHome.indexOf(FS +
"jre"));
+ System.setProperty("java.home", JDK_HOME);
+ }
+ }
+
+ protected void tearDown() throws Exception
+ {
+ // reset surefire's JAVA_HOME
+ System.setProperty("java.home", origJavaHome);
+ }
+
+ public void test() throws Exception
+ {
+ File destDir = new File(TEST_DIR, "wsprovide" + FS + "java");
+ String absOutput = destDir.getAbsolutePath();
+ String command = JBOSS_HOME + FS + "bin" + FS + "wsprovide" +
EXT + " -k -w -o " + absOutput + " --classpath " + CLASSES_DIR +
" " + ENDPOINT_CLASS;
+ executeCommand(command, "wsprovide");
+
+ URL wsdlURL = new File(destDir, "JBWS2528EndpointService.wsdl").toURL();
+ WSDLReader wsdlReader = WSDLFactory.newInstance().newWSDLReader();
+ Definition wsdlDefinition = wsdlReader.readWSDL(wsdlURL.toString());
+ PortType portType = wsdlDefinition.getPortType(new
QName("http://jbws2528.jaxws.ws.test.jboss.org/",
"JBWS2528Endpoint"));
+ Operation op = (Operation)portType.getOperations().get(0);
+ List<String> parOrder = op.getParameterOrdering();
+ assertEquals("id", parOrder.get(0));
+ assertEquals("Name", parOrder.get(1));
+ assertEquals("Employee", parOrder.get(2));
+ }
+
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/JBWS2528TestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Name.java
===================================================================
--- framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Name.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Name.java 2009-03-12
17:29:52 UTC (rev 9595)
@@ -0,0 +1,64 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2528;
+
+public class Name implements java.io.Serializable
+{
+
+ private String firstName = "";
+ private String lastName = "";
+
+ public Name(String firstName, String lastName)
+ {
+ this.firstName = firstName;
+ this.lastName = lastName;
+ }
+
+ public Name()
+ {
+ }
+
+ public String getFirstName()
+ {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName)
+ {
+ this.firstName = firstName;
+ }
+
+ public String getLastName()
+ {
+ return lastName;
+ }
+
+ public void setLastName(String lastName)
+ {
+ this.lastName = lastName;
+ }
+
+ public String toString()
+ {
+ return "First Name:" + firstName + " Last Name:" + lastName;
+ }
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/Name.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/NameException.java
===================================================================
---
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/NameException.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/NameException.java 2009-03-12
17:29:52 UTC (rev 9595)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2528;
+
+public class NameException extends Exception
+{
+ private String first = "";
+
+ public NameException(String first)
+ {
+ super(first + " is an invalid first name.");
+ this.first = first;
+ }
+
+ public NameException()
+ {
+ super();
+ }
+
+ public String getFirst()
+ {
+ return first;
+ }
+
+ public void setFirst(String first)
+ {
+ this.first = first;
+ }
+
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2528/NameException.java
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF