Thanks for your response, ok i've change the code to use the
following, but now it just hangs... i.e. it looks like it's working
in the browser but then just times out.
<cfsetting requesttimeout="1000">
<cfflush interval="5">
<!-- begin code sample -->
<cfset serverStruct = structNew() />
<!-- the variables -->
<cfset serverStruct.serverIp = "192.168.1.139" />
<cfset serverStruct.serverPort = "8080" />
<cfset serverStruct.portConnected = "" />
<cfset sLines = "">
<!--- Create the socket object --->
<cfset objSocket = CreateObject("java", "java.net.Socket")
/>
<!--- Connect --->
<cftry>
<!--- Set up socket to IP:port of remote server --->
<cfset objSocket.init(serverStruct.serverIp,
serverStruct.serverPort)/>
<cfset serverStruct.portConnected =
objSocket.isConnected()>
<!--- Did we connect? --->
<cfif serverStruct.portConnected>
<!-- create the string. Note the use of quotes to escape
quotes in a string -->
<cfset mySendData = "SELECT id FROM tag_id WHERE
protocol_id='GEN2';">
<!--- obtain the streams --->
<cfset input = objSocket.getInputStream()>
<cfset output = objSocket.getOutputStream()>
<!--- set up buffered reader for the socket; it will read
character data
into a buffer until until enough of it can be processed
efficiently. However,
a buffered reader reads a reader object, hence we first have
to convert the
inputstream into a reader --->
<cfobject class="java.io.BufferedReader" name="brObj"
action="CREATE" type="JAVA">
<cfobject class="java.io.InputStreamReader" name="isrObj"
action="CREATE" type="JAVA">
<cfset streamReader = isrObj.init(input)>
<cfset dataBuffer = brObj.init(streamReader)>
<!--- send the data to the remote server --->
<cfobject class="java.io.PrintStream" name="pwObj"
action="CREATE" type="JAVA">
<cfset writer = pwObj.init(output)>
<cfset sentData = writer.println(mySendData)>
<!--- Get the response from the server --->
<!---<cfset response = dataBuffer.readLine()>
<cfset sLines = "">--->
<cfset sLine = dataBuffer.readLine()>
<cfloop condition="#isDefined('sLine')#">
<cfset sLines = "#sLines##sLine#">
<cfset sLine = dataBuffer.readLine()>
</cfloop>
<!--- Close the streams and the connection --->
<cfset streamReader.close()>
<cfset dataBuffer.close()>
<cfset writer.close()>
<cfset objSocket.close()>
</cfif>
<cfcatch type="any">
something went wrong.
</cfcatch>
</cftry>
<cfdump var="#sLine#">