package com.rpc;
import oracle.soap.transport.http.OracleSOAPHTTPConnection;
import org.apache.soap.encoding.soapenc.BeanSerializer;
import org.apache.soap.encoding.SOAPMappingRegistry;
import org.apache.soap.util.xml.QName;
import java.net.URL;
import org.apache.soap.Constants;
import org.apache.soap.Fault;
import org.apache.soap.SOAPException;
import org.apache.soap.rpc.Call;
import org.apache.soap.rpc.Parameter;
import org.apache.soap.rpc.Response;
import java.util.Vector;
import java.lang.Boolean;
import java.lang.Byte;
import java.lang.Double;
import java.lang.Float;
import java.lang.Integer;
import java.lang.Long;
import java.lang.Short;
import java.util.Properties;
/**
* Generated by the Oracle9i JDeveloper Web Services Stub/Skeleton Generator.
* Date Created: Wed Dec 10 17:25:36 PST 2003
* WSDL URL: http://127.0.0.1:8888/ws/GreetingService?WSDL
*/

public class GreetingServiceStub
{
public GreetingServiceStub()
{
m_httpConnection = new OracleSOAPHTTPConnection();
m_smr = new SOAPMappingRegistry();
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "boolean"), java.lang.Boolean.class, null, new org.apache.soap.encoding.soapenc.BooleanObjectDeserializer());
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "byte"), java.lang.Byte.class, null, new org.apache.soap.encoding.soapenc.ByteObjectDeserializer());
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "double"), java.lang.Double.class, null, new org.apache.soap.encoding.soapenc.DoubleObjectDeserializer());
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "float"), java.lang.Float.class, null, new org.apache.soap.encoding.soapenc.FloatObjectDeserializer());
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "int"), java.lang.Integer.class, null, new org.apache.soap.encoding.soapenc.IntObjectDeserializer());
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "long"), java.lang.Long.class, null, new org.apache.soap.encoding.soapenc.LongObjectDeserializer());
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://schemas.xmlsoap.org/soap/encoding/", "short"), java.lang.Short.class, null, new org.apache.soap.encoding.soapenc.ShortObjectDeserializer());
}

public static void main(String[] args)
{
try
{
GreetingServiceStub stub = new GreetingServiceStub();
// Add your own code here.
System.out.println(stub.sayHello("Mike"));
}
catch(Exception ex)
{
ex.printStackTrace();
}

}

private String _endpoint = "http://127.0.0.1:8888/ws/GreetingService";

public String getEndpoint()
{
return _endpoint;
}

public void setEndpoint(String endpoint)
{
_endpoint = endpoint;
}

private OracleSOAPHTTPConnection m_httpConnection = null;
private SOAPMappingRegistry m_smr = null;

public String sayHello(String p) throws Exception
{
String returnVal = null;

URL endpointURL = new URL(_endpoint);
Call call = new Call();
call.setSOAPTransport(m_httpConnection);
call.setTargetObjectURI("GreetingService");
call.setMethodName("sayHello");
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);

Vector params = new Vector();
params.addElement(new Parameter("p", java.lang.String.class, p, null));
call.setParams(params);

call.setSOAPMappingRegistry(m_smr);

Response response = call.invoke(endpointURL, "");

if (!response.generatedFault())
{
Parameter result = response.getReturnValue();
returnVal = (String)result.getValue();
}
else
{
Fault fault = response.getFault();
throw new SOAPException(fault.getFaultCode(), fault.getFaultString());
}

return returnVal;
}

public void setMaintainSession(boolean maintainSession)
{
m_httpConnection.setMaintainSession(maintainSession);
}

public boolean getMaintainSession()
{
return m_httpConnection.getMaintainSession();
}

public void setTransportProperties(Properties props)
{
m_httpConnection.setProperties(props);
}

public Properties getTransportProperties()
{
return m_httpConnection.getProperties();
}
}