[rules-users] Newbie on drools and servlets
kuena
mathe at rucus.net
Thu Apr 22 03:36:20 EDT 2010
Hi,
I know a question has been asked before about drools and servlets, so I
apologise in advance. May someone please advice me on the best way of making
Drools and servlets friends in my application ;-) I want to use drools to
re-implement the servlet shown below. I have also attached the flow.
In brief my scenario works as follows:
User submits a form to request info; result map is returned; if size >3
refine else return results. Refine will require a page to be generated
asking user how to refine. The user answer will then be used to generate
result.
I have a feeling I might just need to add another node (e.g. event wait or
human task) between the refine action and the rule flow group node. Would
want to avoid that but not sure how will resume flow after refine. I would
be grateful for any pointers.
http://n3.nabble.com/forum/FileDownload.jtp?type=n&id=742273&name=flow.png
public class GeneratorServlet extends HttpServlet {
//declarations
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
//declarations
if(request.getAttribute("resultsMap") != null){
map = (Map) request.getAttribute("resultsMap");
//Render results i.e. present results to user if list is
short
if(map.size() <= maxOutput){
htmlPage.render(map, out, templatePath);
}
//list is long, ask how to shorten the list
else if (map.size() > maxOutput){
dialogSession.setAttribute("storedResultsMap", map);
htmlPage.refine(map, out, templatePath);
}
}
else{ // resultsMap is null
if(dialogSession.getAttribute("storedResultsMap")!= null){
map = (Map)
dialogSession.getAttribute("storedResultsMap");
String criteriaSelection =
request.getParameter("refineChoice");
if(criteriaSelection.equalsIgnoreCase("choice1")){
htmlPage.render(choice1Map, out, templatePath);
}
else if(criteriaSelection.equalsIgnoreCase("choice2")){
htmlPage.render(choice2Map, out, templatePath);
}
else {
htmlPage.render(map, out, templatePath);
}
}
}
}
--
View this message in context: http://drools-java-rules-engine.46999.n3.nabble.com/Newbie-on-drools-and-servlets-tp742273p742273.html
Sent from the Drools - User mailing list archive at Nabble.com.
More information about the rules-users
mailing list