Return HashTable

Joined
Jan 17, 2010
Messages
1
Reaction score
0
I am having problem with a Java program that calls a Perl/CGI Script, creates a hash and returns it. A simple example looks like this:

Perl Script:

Code:
sub createHash{

%hashTable = ();

$hashTable{"first"} = 1; # inserts a new hash table entry with key="first" and value=1
$hashTable{"second"} = 2; # new entry with key="second" and value=2

return %hashTable;

}#end createHash

Java Program

Code:
public void getHash(){
		
		HashMap hashmap=new HashMap();
		Vector params = new Vector();
		
		//Create Variables
    	try {
			XmlRpcClient xmlrpc = new XmlRpcClient(SERVER_URL);
			
			//Set Strings
        	        String methodName = "MyProgram.createHash";
           
            
           
        	System.out.println(xmlrpc.execute( methodName, params));
                //The line below is commented out because it throws an error
                //hashmap=(HashMap) xmlrpc.execute( methodName, params);
		
    	
    	
    	} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (XmlRpcException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
    	
    	
    	

	}//end class


The problems are this, when, I System.out.print the return hash created in Perl, is only prints out the last value. When I cast the return value to a Java Hash, it throws a string execption.

So how do I return a hash table or multiple values from a perl program?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,190
Members
46,736
Latest member
zacharyharris

Latest Threads

Top