From: John W. <jwe...@us...> - 2009-11-14 00:20:40
|
Update of /cvsroot/dlsciences/dlese-tools-project/src/org/dlese/dpc/dds In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2107/src/org/dlese/dpc/dds Modified Files: DDSServlet.java Log Message: refactored to ensure OPML menu generator re-write occurs even if context is changed after initial deployment Index: DDSServlet.java =================================================================== RCS file: /cvsroot/dlsciences/dlese-tools-project/src/org/dlese/dpc/dds/DDSServlet.java,v retrieving revision 1.74 retrieving revision 1.75 diff -C2 -d -r1.74 -r1.75 *** DDSServlet.java 20 Mar 2009 23:33:51 -0000 1.74 --- DDSServlet.java 14 Nov 2009 00:16:33 -0000 1.75 *************** *** 66,70 **** private String recordDataSource = "fileSystem"; ! private boolean debug = false; --- 66,70 ---- private String recordDataSource = "fileSystem"; ! private boolean debug = true; *************** *** 88,97 **** isInitialized = true; ! //String analysisType = (String) config.getInitParameter( "analysisType" ); String defaultField = (String) config.getInitParameter("defaultField"); String collectionKey = (String) config.getInitParameter("collectionKey"); - ServletContext servletContext = getServletContext(); // Context init params set in the context definition in server.xml or web.xml: --- 88,139 ---- isInitialized = true; ! ! ServletContext servletContext = getServletContext(); ! ! // Re-write the context path in the DDS webapp's OPML menu files to match the context it is installed at (if not /dds/): ! String contextPath = GeneralServletTools.getContextPath(servletContext); ! String opmlMenuContextPath = "/dds/"; ! if(contextPath != null) { ! if(contextPath.equals("/")) ! opmlMenuContextPath = "/"; ! else ! opmlMenuContextPath = contextPath + "/"; ! } ! ! File ddsTopNav = new File( servletContext.getRealPath("/nav/top.jsp") ); ! //prtln("updating JSP file at: " + ddsTopNav); ! try { ! String fileContent = Files.readFile(ddsTopNav).toString(); ! fileContent = fileContent.replaceAll("OPMLtoHTMLTreeMenu.getMenuHTML\\(\"/\\w*/", "OPMLtoHTMLTreeMenu.getMenuHTML(\""+opmlMenuContextPath); ! Files.writeFile(fileContent,ddsTopNav); ! } catch (Throwable t) { ! prtlnErr("Can't read/write DDS Top nav JSP file: " + t); ! } ! ! File libraryOpmlMenu = new File( servletContext.getRealPath("/services/services_menu.opml") ); ! //prtln("updating OPML file at: " + libraryOpmlMenu); ! try { ! String fileContent = Files.readFile(libraryOpmlMenu).toString(); ! fileContent = fileContent.replaceFirst("context=\"/\\w*/\"", "context=\""+opmlMenuContextPath+"\""); ! Files.writeFile(fileContent,libraryOpmlMenu); ! } catch (Throwable t) { ! prtlnErr("Can't read/write Library OPML menu config file: " + t); ! } ! File ddsOpmlMenu = new File( servletContext.getRealPath("/nav/dds_menu.opml") ); ! //prtln("updating OPML file at: " + ddsOpmlMenu); ! try { ! String fileContent = Files.readFile(ddsOpmlMenu).toString(); ! fileContent = fileContent.replaceFirst("context=\"/\\w*/\"", "context=\""+opmlMenuContextPath+"\""); ! Files.writeFile(fileContent,ddsOpmlMenu); ! } catch (Throwable t) { ! prtlnErr("Can't read/write DDS OPML menu config file: " + t); ! } ! ! ! //String analysisType = (String) config.getInitParameter( "analysisType" ); String defaultField = (String) config.getInitParameter("defaultField"); String collectionKey = (String) config.getInitParameter("collectionKey"); // Context init params set in the context definition in server.xml or web.xml: |