Folks; I spoke too soon. About 10 seconds after starting jspace.shl
(see below) I get the following error -- apparently caused by classerver.jar
refusing a connection attempt from phoenix.jar. I've tried to lift all
security restrictions and I think I've got everyone using port 4160. As
you can see, classserver.jar is indeed running. I also tried replacing
SYSTEM_PORT with 4160 in the phoenix.config file, below: same error. How
can I get classserver.jar to tell me why it refused the connection?
Regards,
-Tim
----------------------------------------------------------------------
Feb 24, 2017 11:48:32 AM org.apache.river.tool.ClassServer run
INFO: ClassServer started [[/projects/builder-group/jpg/apache-river/lib-dl/, /p
rojects/builder-group/jpg/apache-river/lib/, /projects/builder-group/jpg/apache-
river/lib-ext/], port 4160]
- HTTP Server Running -
[haas@tscc-0-22 jsutils]$ Activation.main: an exception occurred: recovery faile
d; nested exception is:
java.lang.ClassNotFoundException: org.apache.river.phoenix.Activation (c
ould not determine preferred setting; original codebase: "http://tscc-0-23.sdsc.
edu:4160/phoenix-dl.jar http://tscc-0-23.sdsc.edu:4160/jsk-dl.jar")
org.apache.river.reliableLog.LogException: recovery failed; nested exception is:
java.lang.ClassNotFoundException: org.apache.river.phoenix.Activation (c
ould not determine preferred setting; original codebase: "http://tscc-0-23.sdsc.
edu:4160/phoenix-dl.jar http://tscc-0-23.sdsc.edu:4160/jsk-dl.jar")
...
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.ja
va:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocket
Impl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java
:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
------------------------ jspace.shl -------------------------------------
rm /home/haas/jinitmp/*.*
rm /home/haas/log/*.*
echo [Deleting contents of jinitmp and log directories]
#
rh="/projects/builder-group/jpg/apache-river"
myconfigs="/home/haas/jsutils"
host=$(hostname)
#
# Start an http server.
#
java -Djava.rmi.server.useCodebaseOnly=false \
-Djava.security.policy=policy.all -jar ${rh}/lib/start.jar httpd.config &
sleep 5
echo - HTTP Server Running -
#
# Activation daemon
#
java -Djava.rmi.server.useCodebaseOnly=false \
-Djava.security.manager= \
-Djava.security.policy=policy.all \
-Djava.rmi.server.codebase="http://${host}:4160/phoenix-dl.jar \
http://${host}:4160/jsk-dl.jar" \
-DserverHost=${host} \
-jar ${rh}/lib/phoenix.jar phoenix.config &
------------------------ policy.all -------------------------------------
grant {
permission java.security.AllPermission "", "";
};
------------------------ httpd.config -------------------------------------
import org.apache.river.start.NonActivatableServiceDescriptor;
import org.apache.river.start.ServiceDescriptor;
org.apache.river.start {
serviceDescriptors = new ServiceDescriptor[]{
new NonActivatableServiceDescriptor(
"", "/home/haas/jsutils/policy.all",
"/projects/builder-group/jpg/apache-river/lib/classserver.jar",
"org.apache.river.tool.ClassServer",
new String[]{"-port", "4160", "-dir",
"/projects/builder-group/jpg/apache-river/lib-dl/:/projects/builder-group/jpg/apache-river/lib/:/projects/builder-group/jpg/apache-river/lib-ext/",
"-verbose"})
};
}
------------------------ phoenix.config -------------------------------------
// a JRMP configuration with no access control
import org.apache.river.phoenix.*;
import net.jini.jrmp.JrmpExporter;
import java.rmi.activation.ActivationSystem;
org.apache.river.phoenix {
registryPort = ActivationSystem.SYSTEM_PORT;
registryExporter = new RegistrySunExporter(registryPort);
activatorExporter = new ActivatorSunJrmpExporter(registryPort);
systemExporter = new SunJrmpExporter(4, registryPort);
monitorExporter = new JrmpExporter(registryPort);
instantiatorExporter = null;
persistenceDirectory = "log";
}