public void _jspService( final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response) throws java.io.IOException, javax.servlet.ServletException { final javax.servlet.jsp.PageContext pageContext; javax.servlet.http.HttpSession session = null; final javax.servlet.ServletContext application; final javax.servlet.ServletConfig config; javax.servlet.jsp.JspWriter out = null; final java.lang.Object page = this; javax.servlet.jsp.JspWriter _jspx_out = null; javax.servlet.jsp.PageContext _jspx_page_context = null; try { response.setContentType("text/html"); pageContext = _jspxFactory.getPageContext(this, request, response, null, true, 8192, true); _jspx_page_context = pageContext; application = pageContext.getServletContext(); config = pageContext.getServletConfig(); session = pageContext.getSession(); out = pageContext.getOut(); _jspx_out = out; out.write("\r\n\r\n"); final DisplayState theDisplayState = (DisplayState) request.getAttribute(MasterServlet.STATE); final Frame frame = (Frame) request.getAttribute(AbstractChip.FRAME_KEY); /* //to be definitive NOT serializable InputStream noser = (InputStream)session.getAttribute( "NOT_SERIALIZABLE"); if( noser==null ) { session.setAttribute( "NOT_SERIALIZABLE", new ByteArrayInputStream( new byte[0] )); } */ out.write('\r'); out.write('\n'); final AbstractAutocompleterToolbarActionChip theChip = (AbstractAutocompleterToolbarActionChip) request.getAttribute(AbstractChip.CHIP_KEY); final String label = (theChip.getLabel() == null ? "" : localized(theChip.getLabel())); final String tooltip = (theChip.getTooltip() == null ? label : localized(theChip.getTooltip())); final String width = theChip.getWidth() != null && theChip.getWidth().length() > 0 ? theChip.getWidth() : "200px"; final String value = theChip.getValue() != null ? "value=\"" + theChip.getValue() + "\"" : ""; final String contextMenu = theChip.hasVisibleContextMenuEntries() ? "(new Menu(" + theChip.createMenuEntriesForJS(theChip.getMenuEntries()) + ", event, null, null, { uniqueName: '" + theChip.getUniqueName() + "'} )).show(); return false;" : "return false;"; out.write("\r\n\r\n<td title=\""); out.print(tooltip); out.write("\" class=\"toolbar-autocomplete\" oncontextmenu=\""); out.print(contextMenu); out.write( "\">\r\n\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t<tr>\r\n\t\t\t<td class=\"label\">"); out.print(label); out.write(":</td>\r\n\t\t\t<td><input type=\"text\" \r\n\t\t\t\t\t\t id=\""); out.print(theChip.getInputID()); out.write("\" \r\n\t\t\t\t\t\t style=\"width:"); out.print(width); out.write(";\"\r\n\t\t\t\t\t\t name=\""); out.print(theChip.getEventID(AbstractAutocompleterToolbarActionChip.VALUE)); out.write("\" \r\n\t\t\t\t\t\t "); out.print(value); out.write("/><div id=\""); out.print(theChip.getMatchesID()); out.write("\" class=\"autocomplete\"></div></td>\r\n\t\t</tr>\r\n\t</table>\r\n</td>\r\n"); final String options = "{ paramName: '" + AbstractAutocompleterToolbarActionChip.SEARCH + "'," + "afterUpdateElement: function(inputElement, selectedListItem) " + "{ if( selectedListItem.nodeName == \"LI\" )" + "{ setEvent('" + theChip.getCommandID(AbstractAutocompleterToolbarActionChip.SELECT) + "', domQuery('span.hidden', selectedListItem)[0].firstChild.nodeValue);setScrollAndSubmit(); }" + "else " + "{ inputElement.value = \"\"; }}," + "onShow: function(element, update)" + "{ if(!update.style.position || update.style.position=='absolute')" + "{ update.style.position = 'absolute'; Position.clone(element, update, { setHeight: false, setWidth:false, offsetTop: element.offsetHeight }); }" + "Effect.Appear(update,{duration:0.15}); } }"; final String tenantIDStr = Registry.getCurrentTenant() instanceof SlaveTenant ? ";tenantID=" + Registry.getCurrentTenant().getTenantID() : ""; out.write("\r\n<script language=\"JavaScript1.2\">\r\n\t\r\n\tnew Ajax.Autocompleter(\""); out.print(theChip.getInputID()); out.write("\", \""); out.print(theChip.getMatchesID()); out.write("\", \"prototype"); out.print(tenantIDStr); out.write('?'); out.print(PrototypeServlet.CHIPID); out.write('='); out.print(theChip.getID()); out.write('"'); out.write(','); out.write(' '); out.print(options); out.write(");\r\n\r\n</script>\r\n\t\t\n"); } catch (java.lang.Throwable t) { if (!(t instanceof javax.servlet.jsp.SkipPageException)) { out = _jspx_out; if (out != null && out.getBufferSize() != 0) try { if (response.isCommitted()) { out.flush(); } else { out.clearBuffer(); } } catch (java.io.IOException e) { } if (_jspx_page_context != null) _jspx_page_context.handlePageException(t); else throw new ServletException(t); } } finally { _jspxFactory.releasePageContext(_jspx_page_context); } }