You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ga...@apache.org on 2007/04/26 20:28:39 UTC
svn commit: r532834 - in /incubator/cxf/trunk/rt:
bindings/soap/src/main/java/org/apache/cxf/binding/soap/
frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/
frontend/jaxws/src/test/java/org/apache/cxf/jaxws/
frontend/jaxws/src/test/java/org/ap...
Author: gawor
Date: Thu Apr 26 11:28:37 2007
New Revision: 532834
URL: http://svn.apache.org/viewvc?view=rev&rev=532834
Log:
handle WebParam.action annotation attribute
Modified:
incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/SoapBindingConfiguration.java
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/service/Hello.java
incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/AbstractServiceConfiguration.java
incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
Modified: incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/SoapBindingConfiguration.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/SoapBindingConfiguration.java?view=diff&rev=532834&r1=532833&r2=532834
==============================================================================
--- incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/SoapBindingConfiguration.java (original)
+++ incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/SoapBindingConfiguration.java Thu Apr 26 11:28:37 2007
@@ -42,7 +42,12 @@
}
public String getSoapAction(OperationInfo op) {
- return defaultSoapAction;
+ String action = (String)op.getProperty("action");
+ if (action == null) {
+ return defaultSoapAction;
+ } else {
+ return action;
+ }
}
public String getTransportURI() {
Modified: incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java?view=diff&rev=532834&r1=532833&r2=532834
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java (original)
+++ incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java Thu Apr 26 11:28:37 2007
@@ -531,5 +531,15 @@
return !method.isAnnotationPresent(Oneway.class);
}
-
+ @Override
+ public String getAction(OperationInfo op, Method method) {
+ method = getDeclaredMethod(method);
+ WebMethod wm = method.getAnnotation(WebMethod.class);
+ if (wm != null) {
+ return wm.action();
+ } else {
+ return "";
+ }
+ }
+
}
Modified: incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java?view=diff&rev=532834&r1=532833&r2=532834
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java (original)
+++ incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java Thu Apr 26 11:28:37 2007
@@ -69,6 +69,10 @@
assertValid("/wsdl:definitions/wsdl:message[@name='getGreetingsResponse']"
+ "/wsdl:part[@element='ns1:getGreetingsResponse'][@name='return']",
+ wsdl);
+
+ assertValid("/wsdl:definitions/wsdl:binding/wsdl:operation[@name='getGreetings']"
+ + "/wsdlsoap:operation[@soapAction='myaction']",
wsdl);
}
Modified: incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/service/Hello.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/service/Hello.java?view=diff&rev=532834&r1=532833&r2=532834
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/service/Hello.java (original)
+++ incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/service/Hello.java Thu Apr 26 11:28:37 2007
@@ -32,7 +32,7 @@
return text;
}
- @WebMethod
+ @WebMethod(action = "myaction")
public List<String> getGreetings() {
List<String> strings = new ArrayList<String>();
strings.add("Hello");
Modified: incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/AbstractServiceConfiguration.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/AbstractServiceConfiguration.java?view=diff&rev=532834&r1=532833&r2=532834
==============================================================================
--- incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/AbstractServiceConfiguration.java (original)
+++ incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/AbstractServiceConfiguration.java Thu Apr 26 11:28:37 2007
@@ -89,7 +89,7 @@
return null;
}
- public String getAction(OperationInfo op) {
+ public String getAction(OperationInfo op, Method method) {
return null;
}
Modified: incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java?view=diff&rev=532834&r1=532833&r2=532834
==============================================================================
--- incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java (original)
+++ incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java Thu Apr 26 11:28:37 2007
@@ -344,6 +344,8 @@
protected OperationInfo createOperation(ServiceInfo serviceInfo, InterfaceInfo intf, Method m) {
OperationInfo op = intf.addOperation(getOperationName(intf, m));
+ op.setProperty("action", getAction(op, m));
+
if (isWrapped(m)) {
UnwrappedOperationInfo uOp = new UnwrappedOperationInfo(op);
op.setUnwrappedOperation(uOp);
@@ -983,15 +985,15 @@
throw new IllegalStateException("ServiceConfiguration must provide a value!");
}
- protected String getAction(OperationInfo op) {
+ protected String getAction(OperationInfo op, Method method) {
for (Iterator itr = serviceConfigurations.iterator(); itr.hasNext();) {
AbstractServiceConfiguration c = (AbstractServiceConfiguration)itr.next();
- String s = c.getAction(op);
+ String s = c.getAction(op, method);
if (s != null) {
return s;
}
}
- throw new IllegalStateException("ServiceConfiguration must provide a value!");
+ return "";
}
public boolean isHeader(Method method, int j) {