You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2008/11/19 11:51:57 UTC
svn commit: r718928 - in /servicemix/smx4/kernel/trunk:
assembly/src/main/distribution/text/etc/
assembly/src/main/distribution/unix-shell/bin/
assembly/src/main/distribution/windows-text/bin/
gshell/gshell-admin/src/main/java/org/apache/servicemix/ker...
Author: gnodet
Date: Wed Nov 19 02:51:57 2008
New Revision: 718928
URL: http://svn.apache.org/viewvc?rev=718928&view=rev
Log:
SMX4KNL-143: Provide a way to make BouncyCaste work in Smx kernel
Modified:
servicemix/smx4/kernel/trunk/assembly/src/main/distribution/text/etc/org.apache.servicemix.shell.cfg
servicemix/smx4/kernel/trunk/assembly/src/main/distribution/unix-shell/bin/servicemix
servicemix/smx4/kernel/trunk/assembly/src/main/distribution/windows-text/bin/servicemix.bat
servicemix/smx4/kernel/trunk/gshell/gshell-admin/src/main/java/org/apache/servicemix/kernel/gshell/admin/internal/InstanceImpl.java
servicemix/smx4/kernel/trunk/main/src/main/java/org/apache/servicemix/kernel/main/Main.java
Modified: servicemix/smx4/kernel/trunk/assembly/src/main/distribution/text/etc/org.apache.servicemix.shell.cfg
URL: http://svn.apache.org/viewvc/servicemix/smx4/kernel/trunk/assembly/src/main/distribution/text/etc/org.apache.servicemix.shell.cfg?rev=718928&r1=718927&r2=718928&view=diff
==============================================================================
--- servicemix/smx4/kernel/trunk/assembly/src/main/distribution/text/etc/org.apache.servicemix.shell.cfg (original)
+++ servicemix/smx4/kernel/trunk/assembly/src/main/distribution/text/etc/org.apache.servicemix.shell.cfg Wed Nov 19 02:51:57 2008
@@ -20,4 +20,4 @@
#
startLocalConsole=${servicemix.startLocalConsole}
startRemoteShell=${servicemix.startRemoteShell}
-remoteShellLocation=tcp://0.0.0.0:8101/
+remoteShellLocation=8101
Modified: servicemix/smx4/kernel/trunk/assembly/src/main/distribution/unix-shell/bin/servicemix
URL: http://svn.apache.org/viewvc/servicemix/smx4/kernel/trunk/assembly/src/main/distribution/unix-shell/bin/servicemix?rev=718928&r1=718927&r2=718928&view=diff
==============================================================================
--- servicemix/smx4/kernel/trunk/assembly/src/main/distribution/unix-shell/bin/servicemix (original)
+++ servicemix/smx4/kernel/trunk/assembly/src/main/distribution/unix-shell/bin/servicemix Wed Nov 19 02:51:57 2008
@@ -213,12 +213,17 @@
fi
fi
- # Add the conf directory so it picks up the Log4J config
- if [ "x$CLASSPATH" = "x" ]; then
- CLASSPATH="$SERVICEMIX_HOME/lib/servicemix.jar:$SERVICEMIX_HOME/lib/servicemix-jaas-boot.jar"
- else
- CLASSPATH="$CLASSPATH:$SERVICEMIX_HOME/lib/servicemix.jar:$SERVICEMIX_HOME/lib/servicemix-jaas-boot.jar"
- fi
+ # Add the jars in the lib dir
+ for file in $SERVICEMIX_HOME/lib/*
+ do
+ if [[ $file == *.jar ]]; then
+ if [ "x$CLASSPATH" = "x" ]; then
+ CLASSPATH="$file"
+ else
+ CLASSPATH="$CLASSPATH:$file"
+ fi
+ fi
+ done
DEFAULT_JAVA_DEBUG_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
##
Modified: servicemix/smx4/kernel/trunk/assembly/src/main/distribution/windows-text/bin/servicemix.bat
URL: http://svn.apache.org/viewvc/servicemix/smx4/kernel/trunk/assembly/src/main/distribution/windows-text/bin/servicemix.bat?rev=718928&r1=718927&r2=718928&view=diff
==============================================================================
--- servicemix/smx4/kernel/trunk/assembly/src/main/distribution/windows-text/bin/servicemix.bat (original)
+++ servicemix/smx4/kernel/trunk/assembly/src/main/distribution/windows-text/bin/servicemix.bat Wed Nov 19 02:51:57 2008
@@ -107,6 +107,19 @@
:SERVICEMIX_PROFILER_END
rem Setup the classpath
+pushd "%SERVICEMIX_HOME%\lib"
+for %%G in (*.*) do call:APPEND_TO_CLASSPATH %%G
+popd
+goto CLASSPATH_END
+
+: APPEND_TO_CLASSPATH
+set filename=%~1
+set suffix=%filename:~-4%
+if %suffix% equ .jar set CLASSPATH=%CLASSPATH%;%SERVICEMIX_HOME%\lib\%filename%
+exit
+
+:CLASSPATH_END
+
set CLASSPATH=%CLASSPATH%;%SERVICEMIX_HOME%\lib\servicemix.jar;%SERVICEMIX_HOME%\lib\servicemix-jaas-boot.jar
rem Execute the JVM or the load the profiler
Modified: servicemix/smx4/kernel/trunk/gshell/gshell-admin/src/main/java/org/apache/servicemix/kernel/gshell/admin/internal/InstanceImpl.java
URL: http://svn.apache.org/viewvc/servicemix/smx4/kernel/trunk/gshell/gshell-admin/src/main/java/org/apache/servicemix/kernel/gshell/admin/internal/InstanceImpl.java?rev=718928&r1=718927&r2=718928&view=diff
==============================================================================
--- servicemix/smx4/kernel/trunk/gshell/gshell-admin/src/main/java/org/apache/servicemix/kernel/gshell/admin/internal/InstanceImpl.java (original)
+++ servicemix/smx4/kernel/trunk/gshell/gshell-admin/src/main/java/org/apache/servicemix/kernel/gshell/admin/internal/InstanceImpl.java Wed Nov 19 02:51:57 2008
@@ -22,6 +22,7 @@
import java.io.IOException;
import java.io.FileOutputStream;
import java.io.OutputStream;
+import java.io.FilenameFilter;
import java.util.Properties;
import java.net.URI;
import java.net.Socket;
@@ -114,16 +115,26 @@
if (javaOpts == null) {
javaOpts = "-server -Xms128M -Xmx512M -Dcom.sun.management.jmxremote";
}
+ File libDir = new File(System.getProperty("servicemix.home"), "lib");
+ File[] jars = libDir.listFiles(new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ return name.endsWith(".jar");
+ }
+ });
+ StringBuilder classpath = new StringBuilder();
+ for (File jar : jars) {
+ if (classpath.length() > 0) {
+ classpath.append(System.getProperty("path.separator"));
+ }
+ classpath.append(jar.getCanonicalPath());
+ }
String command = new File(System.getProperty("java.home"), "bin/java" + (ScriptUtils.isWindows() ? ".exe" : "")).getCanonicalPath()
+ " " + javaOpts
+ " -Dservicemix.home=\"" + System.getProperty("servicemix.home") + "\""
+ " -Dservicemix.base=\"" + new File(location).getCanonicalPath() + "\""
+ " -Dservicemix.startLocalConsole=false"
+ " -Dservicemix.startRemoteShell=true"
- + " -classpath "
- + new File(System.getProperty("servicemix.home"), "lib/servicemix.jar").getCanonicalPath()
- + System.getProperty("path.separator")
- + new File(System.getProperty("servicemix.home"), "lib/servicemix-jaas-boot.jar").getCanonicalPath()
+ + " -classpath " + classpath.toString()
+ " org.apache.servicemix.kernel.main.Main";
this.process = ProcessBuilderFactory.newInstance().newBuilder()
.directory(new File(location))
Modified: servicemix/smx4/kernel/trunk/main/src/main/java/org/apache/servicemix/kernel/main/Main.java
URL: http://svn.apache.org/viewvc/servicemix/smx4/kernel/trunk/main/src/main/java/org/apache/servicemix/kernel/main/Main.java?rev=718928&r1=718927&r2=718928&view=diff
==============================================================================
--- servicemix/smx4/kernel/trunk/main/src/main/java/org/apache/servicemix/kernel/main/Main.java (original)
+++ servicemix/smx4/kernel/trunk/main/src/main/java/org/apache/servicemix/kernel/main/Main.java Wed Nov 19 02:51:57 2008
@@ -35,6 +35,8 @@
import java.util.Properties;
import java.util.StringTokenizer;
import java.util.concurrent.CountDownLatch;
+import java.security.Security;
+import java.security.Provider;
import org.apache.felix.framework.Felix;
import org.apache.felix.framework.cache.BundleCache;
@@ -153,6 +155,8 @@
// Copy framework properties from the system properties.
Main.copySystemProperties(m_configProps);
+ processSecurityProperties(m_configProps);
+
String profileName = m_configProps.getProperty(BundleCache.CACHE_PROFILE_PROP);
String profileDirName = m_configProps.getProperty(BundleCache.CACHE_PROFILE_DIR_PROP);
@@ -397,6 +401,20 @@
return rc;
}
+ private static void processSecurityProperties(Properties m_configProps) {
+ String prop = m_configProps.getProperty("org.apache.servicemix.security.providers");
+ if (prop != null) {
+ String[] providers = prop.split(",");
+ for (String provider : providers) {
+ try {
+ Security.addProvider((Provider) Class.forName(provider).newInstance());
+ } catch (Throwable t) {
+ System.err.println("Unable to register security provider: " + t);
+ }
+ }
+ }
+ }
+
/**
* <p/>
* Processes the auto-install and auto-start properties from the