Author: rmannibucau
Date: Fri Oct 25 06:26:10 2013
New Revision: 1535644

URL: http://svn.apache.org/r1535644
Log:
cleaning a bit CXF logs - which can conflict with our logs - when deploying 
webservices

Modified:
    
tomee/tomee/trunk/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
    
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
    
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfWsContainer.java
    
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbEndpoint.java
    
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbWsContainer.java
    
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoEndpoint.java
    
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoWsContainer.java

Modified: 
tomee/tomee/trunk/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
 Fri Oct 25 06:26:10 2013
@@ -16,7 +16,9 @@
  */
 package org.apache.openejb.server.cxf.rs;
 
+import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.endpoint.Server;
+import org.apache.cxf.endpoint.ServerImpl;
 import org.apache.cxf.helpers.IOUtils;
 import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
 import org.apache.cxf.jaxrs.JAXRSServiceImpl;
@@ -87,11 +89,14 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.logging.Level;
 import java.util.regex.Pattern;
 
 public class CxfRsHttpListener implements RsHttpListener {
     private static final Logger LOGGER = 
Logger.getInstance(LogCategory.OPENEJB_RS, CxfRsHttpListener.class);
 
+    private static final java.util.logging.Logger SERVER_IMPL_LOGGER = 
LogUtils.getL7dLogger(ServerImpl.class);
+
     public static final String CXF_JAXRS_PREFIX = "cxf.jaxrs.";
     public static final String PROVIDERS_KEY = CXF_JAXRS_PREFIX + "providers";
     public static final String STATIC_RESOURCE_KEY = CXF_JAXRS_PREFIX + 
"static-resources-list";
@@ -382,7 +387,14 @@ public class CxfRsHttpListener implement
             factory.setResourceClasses(classes);
             factory.setInvoker(new AutoJAXRSInvoker(restEjbs));
 
-            server = factory.create();
+            final Level level = SERVER_IMPL_LOGGER.getLevel();
+            SERVER_IMPL_LOGGER.setLevel(Level.OFF);
+            try {
+                server = factory.create();
+            } finally {
+                SERVER_IMPL_LOGGER.setLevel(level);
+            }
+
             this.context = webContext;
             if (!webContext.startsWith("/")) {
                 this.context = "/" + webContext;

Modified: 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
 Fri Oct 25 06:26:10 2013
@@ -18,6 +18,7 @@
 package org.apache.openejb.server.cxf;
 
 import org.apache.cxf.Bus;
+import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.databinding.DataBinding;
 import org.apache.cxf.endpoint.Server;
 import org.apache.cxf.endpoint.ServerImpl;
@@ -27,6 +28,7 @@ import org.apache.cxf.jaxws.support.JaxW
 import org.apache.cxf.jaxws.support.JaxWsImplementorInfo;
 import org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean;
 import org.apache.cxf.service.Service;
+import org.apache.cxf.service.factory.ReflectionServiceFactoryBean;
 import org.apache.cxf.transport.http.HTTPTransportFactory;
 import org.apache.openejb.OpenEJBRuntimeException;
 import org.apache.openejb.assembler.classic.ServiceInfo;
@@ -48,9 +50,16 @@ import java.util.List;
 import java.util.Map;
 import java.util.Properties;
 import java.util.concurrent.Executor;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 public abstract class CxfEndpoint {
     public static final String CXF_JAXWS_PREFIX = "cxf.jaxws.";
+
+    // to be able to switch off logs we don't want
+    protected static final Logger FACTORY_BEAN_LOG = 
LogUtils.getLogger(ReflectionServiceFactoryBean.class);
+    private static final Logger SERVER_IMPL_LOGGER = 
LogUtils.getL7dLogger(ServerImpl.class);
+
     protected Bus bus;
 
        protected PortData port;
@@ -85,6 +94,17 @@ public abstract class CxfEndpoint {
                this.bus.setExtension(this, CxfEndpoint.class);
        }
 
+    protected Service doServiceCreate() {
+        final Level level = FACTORY_BEAN_LOG.getLevel();
+        FACTORY_BEAN_LOG.setLevel(Level.SEVERE);
+        try {
+            service = serviceFactory.create();
+        } finally {
+            FACTORY_BEAN_LOG.setLevel(level);
+        }
+        return service;
+    }
+
        protected Class getImplementorClass() {
                return this.implementor.getClass();
        }
@@ -165,7 +185,6 @@ public abstract class CxfEndpoint {
         svrFactory.setServiceClass(serviceFactory.getServiceClass());
 
         final Properties beanConfig = serviceConfiguration.getProperties();
-        final Collection<ServiceInfo> availableServices = 
serviceConfiguration.getAvailableServices();
 
         // endpoint properties
         if (beanConfig != null) {
@@ -186,12 +205,15 @@ public abstract class CxfEndpoint {
                        
svrFactory.setTransportId("http://cxf.apache.org/bindings/xformat";);
                }
 
-               server = svrFactory.create();
-
-               init();
+        final Level level = SERVER_IMPL_LOGGER.getLevel();
+        SERVER_IMPL_LOGGER.setLevel(Level.SEVERE);
+        try {
+                   server = svrFactory.create();
+        } finally {
+            SERVER_IMPL_LOGGER.setLevel(level);
+        }
 
-               // todo do we need to call this?
-               getEndpoint();
+        init();
 
                if (getBinding() instanceof SOAPBinding) {
                        ((SOAPBinding) 
getBinding()).setMTOMEnabled(port.isMtomEnabled());

Modified: 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfWsContainer.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfWsContainer.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfWsContainer.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfWsContainer.java
 Fri Oct 25 06:26:10 2013
@@ -48,13 +48,17 @@ public abstract class CxfWsContainer imp
 
     public void start() {
         endpoint = createEndpoint();
-        endpoint.publish("http://nopath"; + endpoint.hashCode()); // needs to 
be unique
+        endpoint.publish("http://"; + getFakeUrl()); // needs to be unique
         destination = (AbstractHTTPDestination) 
endpoint.getServer().getDestination();
 
         // register an MBean for this endpoint
         this.jmxName = registerMBean();
     }
 
+    protected String getFakeUrl() {
+        return "" + endpoint.hashCode();
+    }
+
     protected abstract CxfEndpoint createEndpoint();
     protected abstract ObjectName registerMBean();
 

Modified: 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbEndpoint.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbEndpoint.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbEndpoint.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbEndpoint.java
 Fri Oct 25 06:26:10 2013
@@ -38,6 +38,7 @@ import org.apache.openejb.server.cxf.Jax
 
 import javax.xml.ws.WebServiceException;
 import java.util.List;
+import java.util.logging.Level;
 
 /**
  * A web service endpoint which invokes an EJB container.
@@ -60,7 +61,7 @@ public class EjbEndpoint extends CxfEndp
         CxfServiceConfiguration configuration = new 
CxfServiceConfiguration(portData);
         serviceFactory.getConfigurations().add(0, configuration);
 
-        service = serviceFactory.create();
+        service = doServiceCreate();
     }
 
     protected Class getImplementorClass() {

Modified: 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbWsContainer.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbWsContainer.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbWsContainer.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/ejb/EjbWsContainer.java
 Fri Oct 25 06:26:10 2013
@@ -55,6 +55,11 @@ public class EjbWsContainer extends CxfW
         return new EjbEndpoint(bus, port, beanContext, httpTransportFactory, 
serviceConfiguration);
     }
 
+    @Override
+    protected String getFakeUrl() {
+        return beanContext.getEjbName();
+    }
+
     protected ObjectName registerMBean() {
         final ObjectName name = new ObjectNameBuilder("openejb.management")
                 .set("j2eeType", "JAX-WS")

Modified: 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoEndpoint.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoEndpoint.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoEndpoint.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoEndpoint.java
 Fri Oct 25 06:26:10 2013
@@ -25,6 +25,7 @@ import org.apache.cxf.jaxws.support.JaxW
 import org.apache.cxf.resource.DefaultResourceManager;
 import org.apache.cxf.resource.ResourceManager;
 import org.apache.cxf.resource.ResourceResolver;
+import org.apache.cxf.service.Service;
 import org.apache.cxf.transport.http.HTTPTransportFactory;
 import org.apache.openejb.InjectionProcessor;
 import org.apache.openejb.assembler.classic.util.ServiceConfiguration;
@@ -63,7 +64,7 @@ public class PojoEndpoint extends CxfEnd
         CxfServiceConfiguration configuration = new 
CxfServiceConfiguration(port);
         serviceFactory.getConfigurations().add(0, configuration);
 
-        service = serviceFactory.create();
+        service = doServiceCreate();
 
         // instantiate and inject resources into service using the app 
classloader to be sure to get the right InitialContext
         final ClassLoader old = Thread.currentThread().getContextClassLoader();

Modified: 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoWsContainer.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoWsContainer.java?rev=1535644&r1=1535643&r2=1535644&view=diff
==============================================================================
--- 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoWsContainer.java
 (original)
+++ 
tomee/tomee/trunk/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/pojo/PojoWsContainer.java
 Fri Oct 25 06:26:10 2013
@@ -61,6 +61,11 @@ public class PojoWsContainer extends Cxf
         this.loader = loader;
     }
 
+    @Override
+    protected String getFakeUrl() {
+        return target.getClass().getName() + "_" + hashCode(); // pojo are not 
like ejbName: unique
+    }
+
     protected PojoEndpoint createEndpoint() {
         return new PojoEndpoint(loader, bus, port, context, target, 
httpTransportFactory, bindings, serviceConfiguration);
     }


Reply via email to