Below is Flex code sample to communicate to a Java servlet in the back-end using HTTP Post Service.
Now, here is the Java Servlet.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns="*" creationComplete="send_data()">
<mx:Script>
<![CDATA[
private function send_data():void {
userRequest.send();
}
]]>
</mx:Script>
<mx:Form x="22" y="10" width="493">
<mx:HBox>
<mx:Label text="Username"/>
<mx:TextInput id="username"/>
</mx:HBox>
<mx:HBox>
<mx:Label text="Email Address"/>
<mx:TextInput id="emailaddress"/>
</mx:HBox>
<mx:Button label="Submit" click="send_data()"/>
</mx:Form>
<mx:HTTPService id="userRequest" url="http://localhost:8080/flexJavaIntegration/opendesk" useProxy="false" method="POST">
<mx:request xmlns="">
<username>{username.text}</username>
<emailaddress>{emailaddress.text}</emailaddress>
</mx:request>
</mx:HTTPService>
</mx:Application>
Now, here is the Java Servlet.
package com.opendesk.flexjava;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class OpenDeskService extends HttpServlet {
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Enumeration en = req.getParameterNames();
while (en.hasMoreElements()) {
String key = (String) en.nextElement();
String value = (String) req.getParameter(key);
System.out.println("Key : " + key + " Value : " + value);
}
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
response.setContentType("text/xml");
PrintWriter writer = response.getWriter();
writer.println("<?xml version=\"1.0\"?>\n");
writer.println("<salesdata>");
writer.println("<item type=\"xxxxxxxxxxxxCDs\">");
writer.println("<profit>");
writer.println(" <beforetax>1750</beforetax>");
writer.println(" <aftertax>1600</aftertax>");
writer.println("</profit>");
writer.println("<sales>21000.23</sales>");
writer.println("</item>");
writer.println("<item type=\"DVD\">");
writer.println("<profit>");
writer.println(" <beforetax>1550.34</beforetax>");
writer.println(" <aftertax>1350.10</aftertax>");
writer.println("</profit>");
writer.println("<sales>11010.98</sales>");
writer.println("</item>");
writer.println("</salesdata>");
}
}
Comments