You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2009/03/12 21:14:50 UTC

svn commit: r752993 - in /cxf/branches/2.1.x-fixes: ./ common/common/src/main/java/org/apache/cxf/common/util/ common/common/src/main/java/org/apache/cxf/resource/ rt/core/src/main/java/org/apache/cxf/wsdl11/ rt/frontend/simple/src/main/java/org/apache...

Author: dkulp
Date: Thu Mar 12 20:14:50 2009
New Revision: 752993

URL: http://svn.apache.org/viewvc?rev=752993&view=rev
Log:
Merged revisions 752992 via svnmerge from 
https://svn.apache.org/repos/asf/cxf/trunk

........
  r752992 | dkulp | 2009-03-12 16:10:28 -0400 (Thu, 12 Mar 2009) | 6 lines
  
  [CXF-2110] First part of patch from Alessio Soldano applied for adding parameterOrder
  [CXF-2081] Add an -J-Xmx flag to forked javac (patch from Torsten Mielke)
  [CXF-2069] Unformatted service list (patch from Ted Leung applied)
  [CXF-2087] If the baseUri is empty, skip doing some stuff that won't work anyway
  [CXF-2084] Make AbstractMessageResponseTimeInterceptor constructor public
........

Modified:
    cxf/branches/2.1.x-fixes/   (props changed)
    cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/common/util/Compiler.java
    cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/resource/URIResolver.java
    cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java
    cxf/branches/2.1.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
    cxf/branches/2.1.x-fixes/rt/management/src/main/java/org/apache/cxf/management/interceptor/AbstractMessageResponseTimeInterceptor.java
    cxf/branches/2.1.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
    cxf/branches/2.1.x-fixes/tools/common/src/main/java/org/apache/cxf/tools/common/ClassUtils.java

Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar 12 20:14:50 2009
@@ -1 +1 @@
-/cxf/trunk:686333-686363,686764,686820,687096,687194,687363,687387,687463,687543,687722,687798,687814,687817,687891,687910,687914,688086,688102,688133,688596,688735,688870,689572,689596,689855,689924,690067,690289,691246,691271,691295,691338,691355,691488,691602,691646,691706,691728,692116,692157,692310,692466,692499,693653,693819,694179,694263,694417,694716,694744,694747,694795,694869,694981,694987,694993,695041,695096,695396,695484,695537,695552,695561,695619,695684,695835,695840,695868,695935,695977,696016,696094,696433,696720,697085,697868,698128,699289,700261,700507,700602,700981,701316,701783,701830,701862,702187,702205-702248,702267,702547,702561,702580,702602,702609,702616,702653,702656,702957,703191,703239,703309,703501,703513,703548,704584,704937,704997,705150,705235,705274,705340,705446,705548,705614,705692,705708,706482,706631,706675,706900,706909,707034,707089,707100,707902,708035,708044,708074,708410,708417,708550,708554,709353-709354,709425,710076,710150,71015
 4,711193,711388,711410,711490,711635,711949,711975,712194,712198,712238,712272,712299,712312,712670,712893,713082,713095-713096,713099,713584,713597,713737,713804,713899,714167-714168,714245,714255,717937-717961,718281-718448,718565,718620,718640,718665,718970,719017,719210,719215-719218,719222-719273,719305,719327-719680,720053,720119-720218,720238,720293-720316,720497,721221,721241,721501,722117,722129,722412,722988,723024,723338,723378,723716-723791,724333-724372,724433-724438,724449,724481,724485,724668,724780,724782,724785,724793,724795,724940,725071,725316,725332,725335,725348,725364,725418,725425-725426,725455,725506,725554,725562,725651,725671,725688,725754,725773,725799,725839,726342,726524,726631,726634,726637,726639,726692,726724,726769,726992,727096,727445,727521,727568,727692,727754,727781,727792,728070,728087,728696,728897,729051,729430,729449,729460,729863,730082,730139,730889,730891,731598,731604,731615,731631,731635,732036,732050,732320,732363,732411,732450,
 732710,732773,732827,732829,733512,733582,733901,734367,734462,734666,734762,734772,734812,734836,734965,735113,735252,735722-735723,735729,735734,735751,735782,735787,735987,736332,736343,736352,736358-736362,736408,736423,736448,736491,736621,736726,736736,736738-736739,736766,736825,736852,737032,737046,737061,737069,737124,737237,737246,737299,737356,737494,737498,737761,737817,737849,737855,737994,738166,738178,738201,738210,738242,738244,738265,738516,738583,738863,738937,738983,739366-739367,739451-739452,739799-739800,739867,739876-739877,739922,739937,739990,740045,740108,740154,740186,740197,740255,740706,740730,740810,740844,740886,740902,740923,740994,741058,741124,741152,741188,741521,741529,741879,742914,743087,743439,743441,743459,743469,743965,743967,744175,744195,744237,744756,745214,745243,745560,745578,745586,745592,745638,745950,746012,746019-746020,746256,746266,746306,746357,746373-746374,747217,747386,747406,747454,747649,747766,747986,748159,748192,74
 8223,748305,748313,748603-748604,748768,749420,749449,749454-749456,749505,749511,749513,749584,749767,749771,749799,749890,750059-750060,750302,750591,750689,750935,751067-751110,751233,751527,751567,751576,751607,751732,751740,751787,751828,751840,751972-751974,752122,752132,752136,752558,752613,752680,752728,752753,752849,752880-752881,752883,752961
+/cxf/trunk:686333-686363,686764,686820,687096,687194,687363,687387,687463,687543,687722,687798,687814,687817,687891,687910,687914,688086,688102,688133,688596,688735,688870,689572,689596,689855,689924,690067,690289,691246,691271,691295,691338,691355,691488,691602,691646,691706,691728,692116,692157,692310,692466,692499,693653,693819,694179,694263,694417,694716,694744,694747,694795,694869,694981,694987,694993,695041,695096,695396,695484,695537,695552,695561,695619,695684,695835,695840,695868,695935,695977,696016,696094,696433,696720,697085,697868,698128,699289,700261,700507,700602,700981,701316,701783,701830,701862,702187,702205-702248,702267,702547,702561,702580,702602,702609,702616,702653,702656,702957,703191,703239,703309,703501,703513,703548,704584,704937,704997,705150,705235,705274,705340,705446,705548,705614,705692,705708,706482,706631,706675,706900,706909,707034,707089,707100,707902,708035,708044,708074,708410,708417,708550,708554,709353-709354,709425,710076,710150,71015
 4,711193,711388,711410,711490,711635,711949,711975,712194,712198,712238,712272,712299,712312,712670,712893,713082,713095-713096,713099,713584,713597,713737,713804,713899,714167-714168,714245,714255,717937-717961,718281-718448,718565,718620,718640,718665,718970,719017,719210,719215-719218,719222-719273,719305,719327-719680,720053,720119-720218,720238,720293-720316,720497,721221,721241,721501,722117,722129,722412,722988,723024,723338,723378,723716-723791,724333-724372,724433-724438,724449,724481,724485,724668,724780,724782,724785,724793,724795,724940,725071,725316,725332,725335,725348,725364,725418,725425-725426,725455,725506,725554,725562,725651,725671,725688,725754,725773,725799,725839,726342,726524,726631,726634,726637,726639,726692,726724,726769,726992,727096,727445,727521,727568,727692,727754,727781,727792,728070,728087,728696,728897,729051,729430,729449,729460,729863,730082,730139,730889,730891,731598,731604,731615,731631,731635,732036,732050,732320,732363,732411,732450,
 732710,732773,732827,732829,733512,733582,733901,734367,734462,734666,734762,734772,734812,734836,734965,735113,735252,735722-735723,735729,735734,735751,735782,735787,735987,736332,736343,736352,736358-736362,736408,736423,736448,736491,736621,736726,736736,736738-736739,736766,736825,736852,737032,737046,737061,737069,737124,737237,737246,737299,737356,737494,737498,737761,737817,737849,737855,737994,738166,738178,738201,738210,738242,738244,738265,738516,738583,738863,738937,738983,739366-739367,739451-739452,739799-739800,739867,739876-739877,739922,739937,739990,740045,740108,740154,740186,740197,740255,740706,740730,740810,740844,740886,740902,740923,740994,741058,741124,741152,741188,741521,741529,741879,742914,743087,743439,743441,743459,743469,743965,743967,744175,744195,744237,744756,745214,745243,745560,745578,745586,745592,745638,745950,746012,746019-746020,746256,746266,746306,746357,746373-746374,747217,747386,747406,747454,747649,747766,747986,748159,748192,74
 8223,748305,748313,748603-748604,748768,749420,749449,749454-749456,749505,749511,749513,749584,749767,749771,749799,749890,750059-750060,750302,750591,750689,750935,751067-751110,751233,751527,751567,751576,751607,751732,751740,751787,751828,751840,751972-751974,752122,752132,752136,752558,752613,752680,752728,752753,752849,752880-752881,752883,752961,752992

Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/common/util/Compiler.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/common/util/Compiler.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/common/util/Compiler.java (original)
+++ cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/common/util/Compiler.java Thu Mar 12 20:14:50 2009
@@ -58,6 +58,9 @@
         // This code doesn't honor java.home
         // list.add("javac");
 
+        //fix for CXF-2081, set maximum heap of this VM to javac.
+        list.add("-J-Xmx" + Runtime.getRuntime().maxMemory());
+
         if (outputDir != null) {
             list.add("-d");
             list.add(outputDir.getAbsolutePath().replace(File.pathSeparatorChar, '/'));

Modified: cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/resource/URIResolver.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/resource/URIResolver.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/resource/URIResolver.java (original)
+++ cxf/branches/2.1.x-fixes/common/common/src/main/java/org/apache/cxf/resource/URIResolver.java Thu Mar 12 20:14:50 2009
@@ -37,6 +37,7 @@
 import org.apache.cxf.common.classloader.ClassLoaderUtils;
 import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.common.util.Base64Utility;
+import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.helpers.IOUtils;
 import org.apache.cxf.helpers.LoadingByteArrayOutputStream;
 
@@ -151,7 +152,7 @@
                 } catch (ClassCastException ex) {
                     is = url.openStream();
                 }
-            } else if (baseUriStr != null) {
+            } else if (!StringUtils.isEmpty(baseUriStr)) {
                 URI base;
                 File baseFile = new File(baseUriStr);
 
@@ -184,6 +185,9 @@
                     tryClasspath(base.toString().startsWith("file:") 
                                  ? base.toString().substring(5) : base.toString());
                 }
+            } else {
+                tryClasspath(uriStr.startsWith("file:") 
+                             ? uriStr.substring(5) : uriStr);
             }
         } catch (URISyntaxException e) {
             // do nothing

Modified: cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java (original)
+++ cxf/branches/2.1.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java Thu Mar 12 20:14:50 2009
@@ -533,6 +533,7 @@
                 this.addExtensibilityAttributes(input, getInputExtensionAttributes(operationInfo));
                 input.setMessage(message);
                 operation.setInput(input);
+                operation.setParameterOrdering(operationInfo.getParameterOrdering());
                 
                 if (operationInfo.getOutput() != null) {
                     Output output = def.createOutput();

Modified: cxf/branches/2.1.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java (original)
+++ cxf/branches/2.1.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java Thu Mar 12 20:14:50 2009
@@ -36,6 +36,7 @@
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Iterator;
+import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -1302,8 +1303,7 @@
             }
             if (isInParam(method, j)) {
                 final QName q = getInParameterName(op, method, j);
-                final QName q2 = getInPartName(op, method, j);
-                MessagePartInfo part = inMsg.addMessagePart(q2);
+                MessagePartInfo part = inMsg.addMessagePart(getInPartName(op, method, j));
                 initializeParameter(part, paramClasses[j], method.getGenericParameterTypes()[j]);
                 //TODO:remove method param annotations
                 part.setProperty(METHOD_PARAM_ANNOTATIONS, method.getParameterAnnotations());
@@ -1398,11 +1398,40 @@
                     }
                 }
             }
-
         }
+        
+        //setting the parameterOrder that
+        //allows preservation of method signatures
+        //when doing java->wsdl->java
+        setParameterOrder(method, paramClasses, op);
 
         initializeFaults(intf, op, method);
     }
+    
+    private void setParameterOrder(Method method, Class[] paramClasses, OperationInfo op) {
+        if (isRPC(method)) {
+            List<String> paramOrdering = new LinkedList<String>();
+            boolean hasOut = false;
+            for (int j = 0; j < paramClasses.length; j++) {
+                if (Exchange.class.equals(paramClasses[j])) {
+                    continue;
+                }
+                if (isInParam(method, j)) {
+                    paramOrdering.add(getInPartName(op, method, j).getLocalPart());
+                    if (isOutParam(method, j)) {
+                        hasOut = true;
+                    }
+                } else if (isOutParam(method, j)) {
+                    hasOut = true;
+                    paramOrdering.add(getOutPartName(op, method, j).getLocalPart());
+                }
+            }
+            if (!paramOrdering.isEmpty() && hasOut) {
+                op.setParameterOrdering(paramOrdering);
+            }
+        }
+    }
+    
 
     protected void createInputWrappedMessageParts(OperationInfo op, Method method, MessageInfo inMsg) {
         MessagePartInfo part = inMsg.addMessagePart("parameters");

Modified: cxf/branches/2.1.x-fixes/rt/management/src/main/java/org/apache/cxf/management/interceptor/AbstractMessageResponseTimeInterceptor.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/management/src/main/java/org/apache/cxf/management/interceptor/AbstractMessageResponseTimeInterceptor.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/rt/management/src/main/java/org/apache/cxf/management/interceptor/AbstractMessageResponseTimeInterceptor.java (original)
+++ cxf/branches/2.1.x-fixes/rt/management/src/main/java/org/apache/cxf/management/interceptor/AbstractMessageResponseTimeInterceptor.java Thu Mar 12 20:14:50 2009
@@ -41,7 +41,7 @@
 public abstract class AbstractMessageResponseTimeInterceptor extends AbstractPhaseInterceptor<Message> {
     private static final Logger LOG = LogUtils.getL7dLogger(AbstractMessageResponseTimeInterceptor.class);
     
-    AbstractMessageResponseTimeInterceptor(String phase) {
+    public AbstractMessageResponseTimeInterceptor(String phase) {
         super(phase);
     }
     

Modified: cxf/branches/2.1.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java (original)
+++ cxf/branches/2.1.x-fixes/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/ServletController.java Thu Mar 12 20:14:50 2009
@@ -126,7 +126,14 @@
                     || StringUtils.isEmpty(request.getPathInfo())
                     || "/".equals(request.getPathInfo())) {
                     updateDests(request);
-                    generateServiceList(request, res);
+                    
+                    if (request.getParameter("stylesheet") != null) {
+                        renderStyleSheet(request, res);
+                    } else if ("false".equals(request.getParameter("formatted"))) {
+                        generateUnformattedServiceList(request, res);
+                    } else {
+                        generateServiceList(request, res);
+                    }
                 } else {
                     d = checkRestfulRequest(request);
                     if (d == null || d.getMessageObserver() == null) {                        
@@ -196,16 +203,7 @@
     }
     
     protected void generateServiceList(HttpServletRequest request, HttpServletResponse response)
-        throws IOException {
-        
-        if (request.getParameter("stylesheet") != null) {
-            URL url = this.getClass().getResource("servicelist.css");
-            if (url != null) {
-                IOUtils.copy(url.openStream(), response.getOutputStream());
-            }
-            return;
-        }
-        
+        throws IOException {        
         response.setContentType("text/html; charset=UTF-8");        
         
         response.getWriter().write("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" " 
@@ -224,15 +222,7 @@
         response.getWriter().write("<title>CXF - Service list</title>");
         response.getWriter().write("</head><body>");
         if (!isHideServiceList) {
-            List<ServletDestination> destinations 
-                = new LinkedList<ServletDestination>(transport.getDestinations());
-            Collections.sort(destinations, new Comparator<ServletDestination>() {
-                public int compare(ServletDestination o1, ServletDestination o2) {
-                    return o1.getEndpointInfo().getInterface().getName()
-                         .getLocalPart().compareTo(o2.getEndpointInfo()
-                                                       .getInterface().getName().getLocalPart());
-                }
-            });
+            List<ServletDestination> destinations = getServletDestinations();
                 
             if (destinations.size() > 0) {  
                 response.getWriter().write("<span class=\"heading\">Available services:</span><br/>");
@@ -270,6 +260,46 @@
         response.getWriter().write("</body></html>");
     }
 
+    private void renderStyleSheet(HttpServletRequest request,
+            HttpServletResponse response) throws IOException {
+        response.setContentType("text/css; charset=UTF-8");
+
+        URL url = this.getClass().getResource("servicelist.css");
+        if (url != null) {
+            IOUtils.copy(url.openStream(), response.getOutputStream());
+        }
+    }
+
+    private List<ServletDestination> getServletDestinations() {
+        List<ServletDestination> destinations = new LinkedList<ServletDestination>(
+                transport.getDestinations());
+        Collections.sort(destinations, new Comparator<ServletDestination>() {
+            public int compare(ServletDestination o1, ServletDestination o2) {
+                return o1.getEndpointInfo().getInterface().getName()
+                        .getLocalPart().compareTo(
+                                o2.getEndpointInfo().getInterface().getName()
+                                        .getLocalPart());
+            }
+        });
+
+        return destinations;
+    }
+
+    protected void generateUnformattedServiceList(HttpServletRequest request,
+            HttpServletResponse response) throws IOException {
+        response.setContentType("text/plain; charset=UTF-8");
+
+        if (!isHideServiceList) {
+            List<ServletDestination> destinations = getServletDestinations();
+
+            for (ServletDestination sd : destinations) {
+                String address = sd.getEndpointInfo().getAddress();
+                response.getWriter().write(address);
+                response.getWriter().write('\n');
+            }
+        }
+    }
+    
     private String getBaseURL(HttpServletRequest request) {
         String reqPrefix = request.getRequestURL().toString();        
         String pathInfo = request.getPathInfo() == null ? "" : request.getPathInfo();

Modified: cxf/branches/2.1.x-fixes/tools/common/src/main/java/org/apache/cxf/tools/common/ClassUtils.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/tools/common/src/main/java/org/apache/cxf/tools/common/ClassUtils.java?rev=752993&r1=752992&r2=752993&view=diff
==============================================================================
--- cxf/branches/2.1.x-fixes/tools/common/src/main/java/org/apache/cxf/tools/common/ClassUtils.java (original)
+++ cxf/branches/2.1.x-fixes/tools/common/src/main/java/org/apache/cxf/tools/common/ClassUtils.java Thu Mar 12 20:14:50 2009
@@ -42,6 +42,9 @@
     public void compile(ToolContext context) throws ToolException {        
         List<String> argList = new ArrayList<String>();
         
+        //fix for CXF-2081, set maximum heap of current VM to javac.
+        argList.add("-J-Xmx" + Runtime.getRuntime().maxMemory());
+
         String javaClasspath = System.getProperty("java.class.path");
         // hard code cxf.jar
         boolean classpathSetted = javaClasspath != null ? true : false;