austin_p P
Posts: 8
Nickname: austin14
Registered: Dec, 2005
|
|
Re: Exception registering service with Entry[] arguments
|
Posted: Dec 8, 2005 8:32 AM
|
|
Kathy, These are the steps i followed:
I installed jini @ C:\jini2_1 My java files are @ C:\jiniworkspace\jini\com My policy files and config files are @ C:\jiniworkspace\jini
I running the following cmds from C:\jiniworkspace\jini
1) I set the classpath using cmd: set CLASSPATH=.; C:\jini2_1\lib\jini-core.jar;C:\jini2_1\lib\jini-ext.jar;C:\jini2_1\lib\reggie. jar;C:\jini2_1\lib-dl\reggie-dl.jar;C:\jini2_1\lib\sun-util.jar;C:\jini2_1\lib\t ools.jar;%CLASSPATH%
2)I start the webserver using the cmd: start java -jar C:\jini2_1\lib\tools.jar -port 8083 -dir C:\jini2_1\lib -verbose The result is :
Dec 8, 2005 10:11:16 AM com.sun.jini.tool.ClassServer run INFO: ClassServer started [[C:\jini2_1\lib\], port 8083]
3) java -Djava.security.policy= C:\jiniworkspace\jini\policy.all -jar \jini2_1\lib\start.jar C:\jiniworkspace\jini\start-transient-reggie.config
Now it says: Exception in thread "main" java.lang.NoClassDefFoundError: policy/all
i tried giving absolute path like security.policy = policy.all but no luck.
start-transient-reggie.config contains :
import com.sun.jini.config.ConfigUtil; import com.sun.jini.start.ServiceDescriptor; import com.sun.jini.start.NonActivatableServiceDescriptor;
com.sun.jini.start { private static codebase ="http://localhost/reggie-dl.jar"; private static policy = "C:\jiniworkspace\jini\reggie.policy"; private static classpath = "C:\jini2_1\lib\reggie.jar"; private static config = "C:\jiniworkspace\jini\transient-reggie.config";
static serviceDescriptors = new ServiceDescriptor[] { new NonActivatableServiceDescriptor( codebase, policy, classpath, "com.sun.jini.reggie.TransientRegistrarImpl", new String[] { config }) }; }
transient-reggie.config contains :
import net.jini.jrmp.*;
com.sun.jini.reggie { serverExporter = new JrmpExporter(); initialMemberGroups = new String[] {}; }
Since the above approach was not working for me , i downloaded the brian murphy starter kit examples.I could the start the reggie service from C:\jini2_1\examples\scripts
Now i ran the serviceRegistration program from C:\jiniworkspace\jini using the cmd:
java -Djava.security.policy=C:\jiniworkspace\jini\policy.all -classpath C:\jini2_1\lib\jini-core.jar;C:\jini2_1\lib\sun-util.jar;C:\jini2_1\lib\jini-ex t.jar;. com.serviceRegistration
I get :
java.net.ConnectException: Connection refused: connect at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158) at java.net.Socket.connect(Socket.java:452) at java.net.Socket.connect(Socket.java:402) at java.net.Socket.<init>(Socket.java:309) at java.net.Socket.<init>(Socket.java:153) at net.jini.core.discovery.LookupLocator.getRegistrar(LookupLocator.java :328) at com.serviceRegistration.<init>(serviceRegistration.java:87) at com.serviceRegistration.main(serviceRegistration.java:26)
==================== ====================================== public class serviceRegistration implements ServiceIDListener { public static void main(String arg[]) { new serviceRegistration(); } public void serviceIDNotify (ServiceID serviceid) { System.out.println ("server: received ServiceID"+ serviceid.toString()); } public serviceRegistration() { myServerImpl Server; LookupLocator lookup = null; ServiceRegistrar registrar = null; ServiceRegistration reg = null; System.setSecurityManager(new RMISecurityManager()); try { lookup = new LookupLocator("jini://localhost:4194"); String host = lookup.getHost(); int port = lookup.getPort(); System.out.println("Host:"+host); System.out.println("Port:"+port); } catch(java.net.MalformedURLException e){ System.err.println("Lookup failed: " + e.toString()); System.exit(1); } try { System.out.println(InetAddress.getLocalHost()); } catch (UnknownHostException e1) { e1.printStackTrace(); } try { System.out.println("test"); registrar = lookup.getRegistrar(120000); } catch (IOException e) { System.err.println(e.toString()); e.printStackTrace(); System.exit(1); } catch (ClassNotFoundException e) { System.err.println("Registrar search failed" + e.toString()); System.exit(1); } System.out.println("Found a registrar"); try { Server = new myServerImpl(); Entry[] entryAttributes = new Entry[1]; entryAttributes[0] = new Name("MyServer"); ServiceItem item = new ServiceItem(null, Server, entryAttributes); reg = registrar.register(item, 10000000L); } catch(RemoteException e) { System.err.println("Register exception: " + e.toString()); } System.out.println("Service registered with registration id: " + reg.getServiceID()); } // end of contructor }
|
|