Solved

Objectspace's Voyager freezes on Namespace.lookup() call running under java 1.1 on Zaurus-5500 PDA.

Posted on 2003-11-17
3
244 Views
Last Modified: 2008-03-17
I am trying to get an intrusion detection system running on a group of Zarusu-5500 PDA's communicating in an ad-hoc network mode. For this IDS, I would like to use mobile agents and have chosen Objectspace Inc's Voyager platform for my ORB and Messaging layers. I have a working application (IDS) using Voyager on multiple Linux desktop machines, running Java 1.4.2. When I attempt to run the ORB server on the PDA's under java 1.1, I receive an exception:

Could not start agent server:
 RuntimeRemoteException( java.net.ConnectException: Connection timed out: connect )

from the Namespace.lookup( serverName ) call to the PDA, where serverName = "//192.168.50.35:7000/Test" (<-- That is the IP of the PDA I am trying to add as a host for the mobile agent to move to). I know this is not a problem with my PATH or CLASSPATH variables as I have added all .jar files to the CLASSPATH and I know the code is working fine on the desktop machines. I have tried Voyager version 4.5, 4.6.1 and 4.7, all with the same result. I suspect version 4.6.1+ is not fully compatible with java 1.1, but I do not think I am using any calls that java 1.1 would dislike.

A typical run-through consists of:  
[on pda terminal, start up voyager orb server]  >voyager tcp://192.168.50.35:7000
["voyager orb professional 4.6.1, copyright...." prints on pda terminal screen]
[on another machine, start up IDS console application for adding in hosts and agents]
[this console asks for a serverName from input and sends the Namespace.lookup( serverName ) call]
[nothing returns from the pda, else timeout error as given above]

When running the console application from the PDA and the ORB server on a desktop machine, the console application throws an exception when trying to bind it's own ip address through Namespace.bind(). That exception is:

RuntimeRemoteException( java.io.IOException: java.lang.NoSuchMethodError: java/util/Vector.add(Ljava/lang/Object;)Z )

Since I am using java 1.1, java/util/Vector does not contain add(), but instead has addElement(). But, Voyager includes 'collections.jar' which has the java 1.2 version of java/util/Vector and supports add().

collections.jar is in my classpath, but it is possible Voyager is not using that newer version of Vector. Inside of collections.jar the path is com/sun/java/util/collections/Vector.class.

The Vector.add call from above is being called from inside of Voyager, a commercial application, so I can not change the call to Vector.addElement, nor change how that call is made or what paths are imported from inside the class that is calling Vector().

Any help on how to get this to use the correct Vector.class would be very helpful, and may be the only real problem I'm having (I hope).

Any help is greatly appreciated.
0
Comment
Question by:theotron5000
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
3 Comments
 
LVL 92

Accepted Solution

by:
objects earned 500 total points
ID: 9767547
com.sun.java.util.collections.Vector and java.util.Vector are different classes.
To use com.sun.java.util.collections.Vector you need to create instances of it instead of java.util.Vector().

eg.

new com.sun.java.util.collections.Vector()

or:

import com.sun.java.util.collections.Vector;
...
new Vector();
0
 
LVL 92

Expert Comment

by:objects
ID: 9767885
If an existing classes is uses java.util.Vector, then there it is not possible to make it use com.sun.java.util.collections.Vector.
0
 
LVL 92

Expert Comment

by:objects
ID: 11274883
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…

632 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question