Now I am more confused. :-)
I don't know of much else that can simulate push technology in http.
A flash animation that re-implemented a meta-refresh could, but I don't see the advantage. How does the Flash know when a response is generated? It could return the generated response to the browser.
public class PayReader {
public int expectedValue = 1;
public int cashInserted = 0;
public native int matrixCashRead(int expectedValue);
static {
System.loadLibrary("MatrixCash");
}
public WOResponse CashRead(PayReader pr,Application myApp,Session mySess){
pr.cashInserted = pr.matrixCashRead(pr.expectedValue);
System.out.println("Total Cash Inserted: $" + pr.cashInserted);
System.out.println("----");
String buildURL = "http://" + myApp.host() + ":" + myApp.port() + "/cgi-bin/WebObjects/BSSKIOSK.woa/wa/CashRead?wosid=" + mySess.sessionID() +
"&completed=1&totalcash=" + pr.cashInserted;
WORequest requestFinish = new WORequest("GET",buildURL,"HTTP/1.1",null,null,null);
WOHTTPConnection connectTo = new WOHTTPConnection(myApp.host(),myApp.port().intValue());
connectTo.sendRequest(requestFinish);
WOResponse response = connectTo.readResponse();
return response;
}
public Number addCash(String value, Number currentValue){
return new Integer(Integer.parseInt(value) + currentValue.intValue());
}
}
Here's the thread I'm using to call open this class:
class PaymentThread extends Thread {
Session sess = (Session)session();
public PaymentThread(String type) {
super(type);
}
public void run() {
PayReader pr = new PayReader();
pr.CashRead(pr,(Application)WOApplication.application(),sess);
}
}
Thanks,
Nathan
On Dec 12, 2005, at 1:03 AM, Chuck Hill wrote:
On Dec 11, 2005, at 9:44 PM, Nathan Walker wrote:
I am overlooking something it seems or maybe it's just been a long day but I'm just trying to get the response from the HTTPConnection request and return that in the current browser window. Below is the code I've tried:
String buildURL = "http://" + myApp.host() + ":" + myApp.port() + "/cgi-bin/WebObjects/BSSKIOSK.woa/wa/CashRead?wosid=" + mySess.sessionID() +
"&completed=1&totalcash=" + pr.cashInserted;
WORequest requestFinish = new WORequest("POST",buildURL,"HTTP/1.1",null,null,null);
WOHTTPConnection connectTo = new WOHTTPConnection(myApp.host(),myApp.port().intValue());
connectTo.sendRequest(requestFinish);
WOResponse response = connectTo.readResponse();
return response;
You can see that the WOHTTPConnection is Posting to a Direct Action, I'd like to return the results from that Direct Action to the browser. This is being done is a private Thread and that's why I need to do it this way. Can I return the results into the current browser window ? It seems to of course just return the WOResponse object which doesn't generate a response in the current browser window ??
Where is this code? In some action method called during invokeAction? You would need to hang onto the response and then in appendToResponse do
response.setContent(responseFromDA.content());
We probably need more information to answer properly.
Chuck
--