/** * OpenCms servlet POST request handling method, * will just call {@link #doGet(HttpServletRequest, HttpServletResponse)}.<p> * * @see javax.servlet.http.HttpServlet#doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) */ @Override public void doPost(HttpServletRequest req, HttpServletResponse res) throws IOException { doGet(req, res); }
/** * OpenCms servlet main request handling method.<p> * * @see javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) */ @Override public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException { handle(req, res, HANDLER_NAMES.SolrSelect.toString()); }
context.m_cms = getCmsObject(req); context.m_params = CmsRequestUtil.createParameterMap(req.getParameterMap()); context.m_index = CmsSearchManager.getIndexSolr(context.m_cms, context.m_params);
/** * @see org.opencms.main.I_CmsRequestHandler#handle(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.String) */ public void handle(HttpServletRequest req, HttpServletResponse res, String name) throws IOException { final HANDLER_NAMES handlerName = HANDLER_NAMES.valueOf(name); if (handlerName != null) { try { Context context = initializeRequest(req, res); if ((context.m_params.get(CommonParams.Q) != null) || (context.m_params.get(CommonParams.FQ) != null)) { switch (handlerName) { case SolrSelect: context.m_index.select(res, context.m_cms, context.m_query, true); break; case SolrSpell: context.m_index.spellCheck(res, context.m_cms, context.m_query); break; default: break; } } } catch (Exception e) { res.setStatus(HttpServletResponse.SC_EXPECTATION_FAILED); String message = Messages.get().getBundle().key(Messages.GUI_SOLR_UNEXPECTED_ERROR_0); String formattedException = CmsException.getStackTraceAsString(e).replace("\n", "<br/>"); res.getWriter().println( Messages.get().getBundle().key(Messages.GUI_SOLR_ERROR_HTML_1, message + formattedException)); } } }
/** * Returns the CMS object.<p> * * @param req the request * * @return the CMS object * * @throws CmsException if something goes wrong */ protected CmsObject getCmsObject(HttpServletRequest req) throws CmsException { CmsObject cms = OpenCmsCore.getInstance().initCmsObjectFromSession(req); // use the guest user as fall back if (cms == null) { cms = OpenCmsCore.getInstance().initCmsObject(OpenCms.getDefaultUsers().getUserGuest()); String siteRoot = OpenCmsCore.getInstance().getSiteManager().matchRequest(req).getSiteRoot(); cms.getRequestContext().setSiteRoot(siteRoot); } String baseUri = getBaseUri(req, cms); if (baseUri != null) { cms.getRequestContext().setUri(baseUri); } return cms; }