funkman 2004/04/06 10:58:59
Modified: jasper2/src/share/org/apache/jasper JspC.java
Log:
Allow disable tag pooling for ant task (and command line option)
also detabbed
Revision Changes Path
1.69 +97 -85
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java
Index: JspC.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/JspC.java,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -r1.68 -r1.69
--- JspC.java 17 Mar 2004 19:23:03 -0000 1.68
+++ JspC.java 6 Apr 2004 17:58:59 -0000 1.69
@@ -1,12 +1,12 @@
/*
* Copyright 1999,2004 The Apache Software Foundation.
- *
+ *
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -108,6 +108,7 @@
private static final String SWITCH_TRIM_SPACES = "-trimSpaces";
private static final String SWITCH_CLASSPATH = "-classpath";
private static final String SWITCH_DIE = "-die";
+ private static final String SWITCH_POOLING = "-poolingEnabled";
private static final String SHOW_SUCCESS ="-s";
private static final String LIST_ERRORS = "-l";
private static final int NO_WEBXML = 0;
@@ -116,19 +117,20 @@
private static final int DEFAULT_DIE_LEVEL = 1;
private static final int NO_DIE_LEVEL = 0;
- private static final String[] insertBefore =
- { "</web-app>", "<servlet-mapping>", "<session-config>",
+ private static final String[] insertBefore =
+ { "</web-app>", "<servlet-mapping>", "<session-config>",
"<mime-mapping>", "<welcome-file-list>", "<error-page>", "<taglib>",
"<resource-env-ref>", "<resource-ref>", "<security-constraint>",
- "<login-config>", "<security-role>", "<env-entry>", "<ejb-ref>",
+ "<login-config>", "<security-role>", "<env-entry>", "<ejb-ref>",
"<ejb-local-ref>" };
- private static int die;
+ private static int die;
private String classPath = null;
private URLClassLoader loader = null;
private boolean trimSpaces = false;
private boolean xpoweredBy;
private boolean mappedFile = false;
+ private boolean poolingEnabled = true;
private File scratchDir;
private String ieClassId = DEFAULT_IE_CLASS_ID;
private String targetPackage;
@@ -261,6 +263,13 @@
die = dieLevel;
} else if (tok.equals(SWITCH_HELP)) {
helpNeeded = true;
+ } else if (tok.equals(SWITCH_POOLING)) {
+ tok = nextArg();
+ if ("false".equals(tok)) {
+ poolingEnabled = false;
+ } else {
+ poolingEnabled = true;
+ }
} else {
if (tok.startsWith("-")) {
throw new JasperException("Unrecognized option: " + tok +
@@ -296,7 +305,11 @@
}
public boolean isPoolingEnabled() {
- return true;
+ return poolingEnabled;
+ }
+
+ public void setPoolingEnabled(boolean poolingEnabled) {
+ this.poolingEnabled = poolingEnabled;
}
public boolean isXpoweredBy() {
@@ -312,19 +325,19 @@
}
public int getTagPoolSize() {
- return Constants.MAX_POOL_SIZE;
+ return Constants.MAX_POOL_SIZE;
}
/**
* Are we supporting HTML mapped servlets?
*/
public boolean getMappedFile() {
- return mappedFile;
+ return mappedFile;
}
// Off-line compiler, no need for security manager
public Object getProtectionDomain() {
- return null;
+ return null;
}
public boolean getSendErrorToClient() {
@@ -366,14 +379,14 @@
* Is the generation of SMAP info for JSR45 debuggin suppressed?
*/
public boolean isSmapSuppressed() {
- return true;
+ return true;
}
/**
* Should SMAP info for JSR45 debugging be dumped to a file?
*/
public boolean isSmapDumped() {
- return false;
+ return false;
}
/**
@@ -413,7 +426,7 @@
}
public TldLocationsCache getTldLocationsCache() {
- return tldLocationsCache;
+ return tldLocationsCache;
}
/**
@@ -423,14 +436,14 @@
* @return String The encoding
*/
public String getJavaEncoding() {
- return javaEncoding;
+ return javaEncoding;
}
/**
* Sets the encoding to use for
* java files.
*
- * @param encodingName The name, e.g. "UTF-8"
+ * @param encodingName The name, e.g. "UTF-8"
*/
public void setJavaEncoding(String encodingName) {
javaEncoding = encodingName;
@@ -531,7 +544,7 @@
* Obtain JSP configuration informantion specified in web.xml.
*/
public JspConfig getJspConfig() {
- return jspConfig;
+ return jspConfig;
}
public TagPluginManager getTagPluginManager() {
@@ -576,13 +589,13 @@
File webappBase = new File(uriRoot);
File webXml = new File(webappBase, "WEB-INF/web.xml");
File webXml2 = new File(webappBase, "WEB-INF/web2.xml");
- String insertStartMarker =
+ String insertStartMarker =
Localizer.getMessage("jspc.webinc.insertStart");
- String insertEndMarker =
+ String insertEndMarker =
Localizer.getMessage("jspc.webinc.insertEnd");
BufferedReader reader = new BufferedReader(new FileReader(webXml));
- BufferedReader fragmentReader =
+ BufferedReader fragmentReader =
new BufferedReader(new FileReader(webxmlFile));
PrintWriter writer = new PrintWriter(new FileWriter(webXml2));
@@ -727,15 +740,15 @@
rootCause = ((JasperException) rootCause).getRootCause();
}
log.error(Localizer.getMessage("jspc.error.generalException",
- file),
- rootCause);
+ file),
+ rootCause);
throw je;
} catch (Exception e) {
- if ((e instanceof FileNotFoundException) && log.isWarnEnabled()) {
- log.warn(Localizer.getMessage("jspc.error.fileDoesNotExist",
- e.getMessage()));
- }
+ if ((e instanceof FileNotFoundException) && log.isWarnEnabled()) {
+ log.warn(Localizer.getMessage("jspc.error.fileDoesNotExist",
+ e.getMessage()));
+ }
throw new JasperException(e);
}
}
@@ -779,12 +792,12 @@
public void execute() throws JasperException {
try {
- if (uriRoot == null) {
- if( pages.size() == 0 ) {
- throw new JasperException(
- Localizer.getMessage("jsp.error.jspc.missingTarget"));
- }
- String firstJsp=(String)pages.elementAt( 0 );
+ if (uriRoot == null) {
+ if( pages.size() == 0 ) {
+ throw new JasperException(
+
Localizer.getMessage("jsp.error.jspc.missingTarget"));
+ }
+ String firstJsp=(String)pages.elementAt( 0 );
File firstJspF = new File( firstJsp );
if (!firstJspF.exists()) {
throw new JasperException(
@@ -792,58 +805,58 @@
firstJsp));
}
locateUriRoot( firstJspF );
- }
+ }
- if( context==null )
- initServletContext();
+ if( context==null )
+ initServletContext();
- // No explicit page, we'll process all .jsp in the webapp
- if (pages.size() == 0) {
- scanFiles( new File( uriRoot ));
- }
+ // No explicit page, we'll process all .jsp in the webapp
+ if (pages.size() == 0) {
+ scanFiles( new File( uriRoot ));
+ }
if (uriRoot == null) {
- throw new JasperException(
- Localizer.getMessage("jsp.error.jspc.no_uriroot"));
- }
- File uriRootF = new File(uriRoot);
- if (!uriRootF.exists() || !uriRootF.isDirectory()) {
- throw new JasperException(
- Localizer.getMessage("jsp.error.jspc.uriroot_not_dir"));
- }
-
- initWebXml();
-
- Enumeration e = pages.elements();
- while (e.hasMoreElements()) {
- String nextjsp = e.nextElement().toString();
- try {
- File fjsp = new File(nextjsp);
- if (!fjsp.exists()) {
- if (log.isWarnEnabled()) {
-
log.warn(Localizer.getMessage("jspc.error.fileDoesNotExist",
- fjsp.toString()));
- }
- continue;
- }
- String s = fjsp.getCanonicalPath();
- //System.out.println("**" + s);
- if (s.startsWith(uriRoot)) {
- nextjsp = s.substring(uriRoot.length());
- }
- } catch (IOException ioe) {
- // if we got problems dont change the file name
- }
-
- if (nextjsp.startsWith("." + File.separatorChar)) {
- nextjsp = nextjsp.substring(2);
- }
+ throw new JasperException(
+ Localizer.getMessage("jsp.error.jspc.no_uriroot"));
+ }
+ File uriRootF = new File(uriRoot);
+ if (!uriRootF.exists() || !uriRootF.isDirectory()) {
+ throw new JasperException(
+ Localizer.getMessage("jsp.error.jspc.uriroot_not_dir"));
+ }
+
+ initWebXml();
+
+ Enumeration e = pages.elements();
+ while (e.hasMoreElements()) {
+ String nextjsp = e.nextElement().toString();
+ try {
+ File fjsp = new File(nextjsp);
+ if (!fjsp.exists()) {
+ if (log.isWarnEnabled()) {
+
log.warn(Localizer.getMessage("jspc.error.fileDoesNotExist",
+ fjsp.toString()));
+ }
+ continue;
+ }
+ String s = fjsp.getCanonicalPath();
+ //System.out.println("**" + s);
+ if (s.startsWith(uriRoot)) {
+ nextjsp = s.substring(uriRoot.length());
+ }
+ } catch (IOException ioe) {
+ // if we got problems dont change the file name
+ }
+
+ if (nextjsp.startsWith("." + File.separatorChar)) {
+ nextjsp = nextjsp.substring(2);
+ }
+
+ processFile(nextjsp);
+ }
- processFile(nextjsp);
- }
+ completeWebXml();
- completeWebXml();
-
if (addWebXmlMappings) {
mergeIntoWebXml();
}
@@ -930,8 +943,7 @@
context =new JspCServletContext
(new PrintWriter(System.out),
new URL("file:" + uriRoot.replace('\\','/') + '/'));
- tldLocationsCache = new
- TldLocationsCache(context, true);
+ tldLocationsCache = new TldLocationsCache(context, true);
} catch (MalformedURLException me) {
System.out.println("**" + me);
}
@@ -941,7 +953,7 @@
}
private void initClassLoader(JspCompilationContext clctxt)
- throws IOException {
+ throws IOException {
classPath = getClassPath();
@@ -1038,10 +1050,10 @@
if (g.exists() && g.isDirectory()) {
uriRoot = f.getCanonicalPath();
uriBase = tUriBase;
- if (log.isInfoEnabled()) {
- log.info(Localizer.getMessage("jspc.implicit.uriRoot",
- uriRoot));
- }
+ if (log.isInfoEnabled()) {
+ log.info(Localizer.getMessage("jspc.implicit.uriRoot",
+ uriRoot));
+ }
break;
}
if (f.exists() && f.isDirectory()) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]