You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by di...@apache.org on 2008/06/03 00:43:02 UTC
svn commit: r662593 - in /webservices/axis2/trunk/java/modules/osgi:
resources/META-INF/ src/org/apache/axis2/extensions/osgi/
src/org/apache/axis2/extensions/osgi/util/
Author: dims
Date: Mon Jun 2 15:43:02 2008
New Revision: 662593
URL: http://svn.apache.org/viewvc?rev=662593&view=rev
Log:
behave better when there is no log service running
Added:
webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/util/Logger.java
Modified:
webservices/axis2/trunk/java/modules/osgi/resources/META-INF/MANIFEST.MF
webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/Activator.java
webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/ServiceRegistry.java
Modified: webservices/axis2/trunk/java/modules/osgi/resources/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/osgi/resources/META-INF/MANIFEST.MF?rev=662593&r1=662592&r2=662593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/osgi/resources/META-INF/MANIFEST.MF (original)
+++ webservices/axis2/trunk/java/modules/osgi/resources/META-INF/MANIFEST.MF Mon Jun 2 15:43:02 2008
@@ -122,6 +122,7 @@
org.jivesoftware.smack;resolution:=optional,
org.osgi.framework,
org.osgi.service.http,
+ org.osgi.util.tracker,
org.osgi.service.log,
org.w3c.dom,
org.xml.sax
Modified: webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/Activator.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/Activator.java?rev=662593&r1=662592&r2=662593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/Activator.java (original)
+++ webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/Activator.java Mon Jun 2 15:43:02 2008
@@ -19,6 +19,7 @@
package org.apache.axis2.extensions.osgi;
+import org.apache.axis2.extensions.osgi.util.Logger;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
@@ -34,11 +35,12 @@
OSGiAxis2Servlet servlet = new OSGiAxis2Servlet();
ServiceRegistry registry = null;
HttpService httpServ = null;
- LogService log = null;
+ Logger logger;
public void start(BundleContext context) throws Exception {
this.context = context;
- System.out.println("[Axis2/OSGi] Registering Axis2 Servlet");
+ logger = new Logger(context);
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Registering Axis2 Servlet");
ServiceReference sr = context.getServiceReference(HttpService.class.getName());
if (sr != null) {
@@ -47,24 +49,15 @@
httpServ.registerServlet("/axis2",
servlet, null, null);
} catch (Exception e) {
- System.err.println("[Axis2/OSGi] Exception registering Axis Servlet:"
- + e);
+ logger.log(LogService.LOG_ERROR,"[Axis2/OSGi] Exception registering Axis Servlet",
+ e);
}
}
- ServiceReference sr2 = context.getServiceReference(LogService.class.getName());
- if (sr2 != null) {
- log = (LogService) context.getService(sr);
- if (log == null) {
- System.err.println("[Axis2/OSGi] Unable to find Log Service");
- }
- }
+ registry = new ServiceRegistry(servlet, logger);
- System.out.println("[Axis2/OSGi] Starting Bundle Listener");
+ logger.log(LogService.LOG_INFO, "[Axis2/OSGi] Starting Bundle Listener");
context.addBundleListener(this);
-
- registry = new ServiceRegistry(servlet, log);
-
// TODO: We should poke at all the bundles already in the system
// Bundle bundles[] = context.getBundles();
// for (int i = 0; i < bundles.length; i++) {
@@ -82,14 +75,14 @@
switch (event.getType()) {
case BundleEvent.STARTED:
if(context.getBundle() != bundle){
- System.out.println("[Axis2/OSGi] Starting any services in Bundle - " + bundle.getSymbolicName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Starting any services in Bundle - " + bundle.getSymbolicName());
registry.register(event.getBundle());
}
break;
case BundleEvent.STOPPED:
if(context.getBundle() != bundle){
- System.out.println("[Axis2/OSGi] Stopping any services in Bundle - " + bundle.getSymbolicName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Stopping any services in Bundle - " + bundle.getSymbolicName());
registry.unregister(event.getBundle());
}
break;
@@ -97,7 +90,7 @@
}
public void stop(BundleContext context) throws Exception {
- System.out.println("[Axis2/OSGi] Stopping all services and the Bundle Listener");
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Stopping all services and the Bundle Listener");
this.context.removeBundleListener(this);
registry.close();
}
Modified: webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/ServiceRegistry.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/ServiceRegistry.java?rev=662593&r1=662592&r2=662593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/ServiceRegistry.java (original)
+++ webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/ServiceRegistry.java Mon Jun 2 15:43:02 2008
@@ -29,9 +29,11 @@
import org.apache.axis2.description.AxisServiceGroup;
import org.apache.axis2.description.Flow;
import org.apache.axis2.extensions.osgi.util.BundleClassLoader;
+import org.apache.axis2.extensions.osgi.util.Logger;
import org.apache.axis2.jaxws.framework.JAXWSDeployer;
import org.osgi.framework.Bundle;
import org.osgi.service.log.LogService;
+import org.osgi.util.tracker.ServiceTracker;
import java.net.URL;
import java.util.ArrayList;
@@ -41,20 +43,20 @@
public class ServiceRegistry extends JAXWSDeployer {
private OSGiAxis2Servlet servlet;
- private LogService log;
+ private Logger logger;
private HashMap services = new HashMap();
private boolean isInited = false;
- public ServiceRegistry(OSGiAxis2Servlet servlet, LogService log) {
+ public ServiceRegistry(OSGiAxis2Servlet servlet, Logger logger) {
this.servlet = servlet;
- this.log = log;
+ this.logger = logger;
}
public void register(Bundle bundle) {
if(!isInited){
ConfigurationContext context = servlet.ConfigurationContext();
if(context == null){
- System.out.println("[Axis2/OSGi] Configuration Context is null. unable to register bundle");
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Configuration Context is null. unable to register bundle");
return;
}
init(context);
@@ -79,17 +81,17 @@
try {
AxisServiceGroup serviceGroup = deployClasses(bundle.getSymbolicName(), null, loader, classes);
if (serviceGroup != null) {
- System.out.println("[Axis2/OSGi] Deployed ServiceGroup - " + serviceGroup.getServiceGroupName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Deployed ServiceGroup - " + serviceGroup.getServiceGroupName());
for (Iterator iterator = serviceGroup.getServices(); iterator.hasNext();) {
AxisService service = (AxisService) iterator.next();
- System.out.println("[Axis2/OSGi] Service - " + service.getName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Service - " + service.getName());
}
services.put(bundle, serviceGroup);
}
} catch (Exception e) {
- if(log != null) {
- log.log(LogService.LOG_INFO, "Exception deploying classes", e);
+ if(logger != null) {
+ logger.log(LogService.LOG_INFO, "Exception deploying classes", e);
}
}
}
@@ -137,8 +139,8 @@
}
}
} catch (Exception e) {
- if(log != null) {
- log.log(LogService.LOG_INFO, "Exception deploying modules", e);
+ if(logger != null) {
+ logger.log(LogService.LOG_INFO, "Exception deploying modules", e);
}
}
}
@@ -148,15 +150,15 @@
AxisServiceGroup serviceGroup = (AxisServiceGroup) iterator.next();
try {
axisConfig.removeServiceGroup(serviceGroup.getServiceGroupName());
- System.out.println("[Axis2/OSGi] Undeployed ServiceGroup - " + serviceGroup.getServiceGroupName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Undeployed ServiceGroup - " + serviceGroup.getServiceGroupName());
for (Iterator iterator2 = serviceGroup.getServices(); iterator2.hasNext();) {
AxisService service = (AxisService) iterator2.next();
- System.out.println("[Axis2/OSGi] Service - " + service.getName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Service - " + service.getName());
}
} catch (AxisFault axisFault) {
- if(log != null) {
- log.log(LogService.LOG_INFO, axisFault.getMessage(), axisFault);
+ if(logger != null) {
+ logger.log(LogService.LOG_INFO, axisFault.getMessage(), axisFault);
}
}
}
@@ -167,15 +169,15 @@
if (serviceGroup != null) {
try {
axisConfig.removeServiceGroup(serviceGroup.getServiceGroupName());
- System.out.println("[Axis2/OSGi] Undeployed ServiceGroup - " + serviceGroup.getServiceGroupName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Undeployed ServiceGroup - " + serviceGroup.getServiceGroupName());
for (Iterator iterator2 = serviceGroup.getServices(); iterator2.hasNext();) {
AxisService service = (AxisService) iterator2.next();
- System.out.println("[Axis2/OSGi] Service - " + service.getName());
+ logger.log(LogService.LOG_INFO,"[Axis2/OSGi] Service - " + service.getName());
}
} catch (AxisFault axisFault) {
- if(log != null) {
- log.log(LogService.LOG_INFO, axisFault.getMessage(), axisFault);
+ if(logger != null) {
+ logger.log(LogService.LOG_INFO, axisFault.getMessage(), axisFault);
}
}
}
Added: webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/util/Logger.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/util/Logger.java?rev=662593&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/util/Logger.java (added)
+++ webservices/axis2/trunk/java/modules/osgi/src/org/apache/axis2/extensions/osgi/util/Logger.java Mon Jun 2 15:43:02 2008
@@ -0,0 +1,53 @@
+package org.apache.axis2.extensions.osgi.util;
+
+import org.osgi.framework.BundleContext;
+import org.osgi.service.log.LogService;
+import org.osgi.util.tracker.ServiceTracker;
+
+public class Logger extends ServiceTracker {
+ public Logger(BundleContext context){
+ super(context, LogService.class.getName(), null);
+ open();
+ }
+
+ public LogService getLogService(){
+ return (LogService)this.getService();
+ }
+
+ public void log(int i, java.lang.String s) {
+ LogService service = getLogService();
+ if(service == null){
+ print(i, s);
+ } else {
+ service.log(i, s);
+ }
+ }
+
+ private void print(int i, String s) {
+ switch(i){
+ case LogService.LOG_ERROR:
+ System.out.print("[ERROR] ");
+ break;
+ case LogService.LOG_INFO:
+ System.out.print("[INFO] ");
+ break;
+ case LogService.LOG_WARNING:
+ System.out.print("[WARNDING]");
+ break;
+ case LogService.LOG_DEBUG:
+ System.out.print("[DEBUG] ");
+ break;
+ }
+ System.out.println(" : " + s);
+ }
+
+ public void log(int i, java.lang.String s, java.lang.Throwable throwable) {
+ LogService service = getLogService();
+ if(service == null){
+ print(i, s);
+ throwable.printStackTrace(System.out);
+ } else {
+ service.log(i, s, throwable);
+ }
+ }
+}