Friday, 6 September 2013

Sending a Procedure Request to SQL Gateway via Java (Android)

Sending a Procedure Request to SQL Gateway via Java (Android)

Basically what the title says. I have an Oracle PL/SQL server, being
accessed through a Gateway.
I'm doing it successfully in VB.Net, and would like to know how to do it
in Java. Here is my preliminary code.
try
{
Socket client1 = new Socket();
client1.setSoTimeout(10000);
client1.bind(new InetSocketAddress("167.206.57.120", 33100));
InputStream inStream = client1.getInputStream();
OutputStream outStream = client1.getOutputStream();
byte[] response = new byte[4096];
int bytes = 0;
String serverReturnString = null;
bytes = inStream.read(response, 0, response.length);
serverReturnString = String.valueOf(bytes);
System.out.println("TestAvailablility: serverReturnString = {0} "
+ serverReturnString);
if (serverReturnString.toLowerCase().startsWith("I DON'T KNOW WHAT TO
PUT HERE"))
{
Toast.makeText(getBaseContext(), "Connected to Server! Whoooooo!",
Toast.LENGTH_SHORT).show();
}
Toast.makeText(getBaseContext(), "At least we got here.",
Toast.LENGTH_SHORT).show();
}
catch (Exception ex) // SocketException for connect, IOException for the
read.
{
System.out.println("TestAvailable - Could not connect to VNC server.
Exception info: ");
ex.printStackTrace();
}
The major part that is messing me up is the "Stream". In VB, we have a
stream that is both IN and OUT.
Dim networkStream As NetworkStream = TCPClient.GetStream()
Do I have to declare it separately as such in Java?:
InputStream inStream = client1.getInputStream();
OutputStream outStream = client1.getOutputStream();
Please help and advise. And thank you. =) P.S. - Feel free to ask for more
code if it will help clarify the answer. I'm also not adverse to reading
material, but hell if I've found any.
P.P.S - These are the exceptions/StackTrace. There is more, ask if needed.
09-06 20:25:03.384: W/System.err(756): java.net.SocketException: socket
failed: EACCES (Permission denied)
09-06 20:25:03.403: W/System.err(756): at
libcore.io.IoBridge.socket(IoBridge.java:583)
09-06 20:25:03.413: W/System.err(756): at
java.net.PlainSocketImpl.create(PlainSocketImpl.java:201)
09-06 20:25:03.423: W/System.err(756): at
java.net.Socket.checkOpenAndCreate(Socket.java:663)
09-06 20:25:03.423: W/System.err(756): at
java.net.Socket.setSoTimeout(Socket.java:518)

No comments:

Post a Comment