You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by rs...@apache.org on 2002/09/12 21:12:20 UTC
cvs commit: xml-axis/java/src/org/apache/axis/configuration EngineConfigurationFactoryServlet.java XMLStringProvider.java ServletEngineConfigurationFactory.java FileProvider.java
rsitze 2002/09/12 12:12:20
Modified: java/src/org/apache/axis/configuration
EngineConfigurationFactoryServlet.java
XMLStringProvider.java
ServletEngineConfigurationFactory.java
FileProvider.java
Log:
Take II: fix servlet config file problem.
Revision Changes Path
1.11 +13 -24 xml-axis/java/src/org/apache/axis/configuration/EngineConfigurationFactoryServlet.java
Index: EngineConfigurationFactoryServlet.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/configuration/EngineConfigurationFactoryServlet.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- EngineConfigurationFactoryServlet.java 9 Sep 2002 21:49:07 -0000 1.10
+++ EngineConfigurationFactoryServlet.java 12 Sep 2002 19:12:20 -0000 1.11
@@ -145,38 +145,27 @@
*/
private static EngineConfiguration getServerEngineConfig(ServletContext ctx) {
/*
- * Use the WEB-INF directory (so the config files can't get
- * snooped by a browser)
+ * Use the WEB-INF directory
+ * (so the config files can't get snooped by a browser)
*/
- String webInfPath = "/WEB-INF/";
- String serverConfigFileName = webInfPath + SERVER_CONFIG_FILE;
+ String appWebInfPath = "/WEB-INF";
- URL configURL;
- try {
- configURL = ctx.getResource(serverConfigFileName);
- } catch (MalformedURLException e) {
- configURL = null;
- }
+ String realWebInfPath = ctx.getRealPath(appWebInfPath);
FileProvider config = null;
- if (configURL != null) {
- config = new FileProvider(configURL.getFile().toString());
- } else {
- String realWebInfPath = ctx.getRealPath(webInfPath);
- if (realWebInfPath != null &&
- (new File(realWebInfPath, SERVER_CONFIG_FILE)).exists()) {
+ if (realWebInfPath != null &&
+ (new File(realWebInfPath, SERVER_CONFIG_FILE)).exists()) {
- try {
- config = new FileProvider(realWebInfPath, SERVER_CONFIG_FILE);
- } catch (ConfigurationException e) {
- log.error(Messages.getMessage("servletEngineWebInfError00"),
- e);
- }
+ try {
+ config = new FileProvider(realWebInfPath, SERVER_CONFIG_FILE);
+ } catch (ConfigurationException e) {
+ log.error(Messages.getMessage("servletEngineWebInfError00"), e);
}
}
if (config == null) {
- InputStream is = ctx.getResourceAsStream(serverConfigFileName);
+ String appServerConfigFileName = appWebInfPath + "/" + SERVER_CONFIG_FILE;
+ InputStream is = ctx.getResourceAsStream(appServerConfigFileName);
if (is != null) {
// FileProvider assumes responsibility for 'is':
// do NOT call is.close().
@@ -185,7 +174,7 @@
if (config == null) {
log.error(Messages.getMessage("servletEngineWebInfError01",
- serverConfigFileName));
+ appServerConfigFileName));
}
}
1.8 +1 -1 xml-axis/java/src/org/apache/axis/configuration/XMLStringProvider.java
Index: XMLStringProvider.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/configuration/XMLStringProvider.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- XMLStringProvider.java 26 Jun 2002 18:22:25 -0000 1.7
+++ XMLStringProvider.java 12 Sep 2002 19:12:20 -0000 1.8
@@ -105,7 +105,7 @@
}
public void configureEngine(AxisEngine engine) throws ConfigurationException {
- myInputStream = new ByteArrayInputStream(xmlConfiguration.getBytes());
+ setInputStream(new ByteArrayInputStream(xmlConfiguration.getBytes()));
super.configureEngine(engine);
}
}
1.15 +1 -1 xml-axis/java/src/org/apache/axis/configuration/ServletEngineConfigurationFactory.java
Index: ServletEngineConfigurationFactory.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/configuration/ServletEngineConfigurationFactory.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- ServletEngineConfigurationFactory.java 28 Aug 2002 03:15:11 -0000 1.14
+++ ServletEngineConfigurationFactory.java 12 Sep 2002 19:12:20 -0000 1.15
@@ -59,7 +59,7 @@
/**
* This is a 'front' for replacement logic.
- * Use EngineConfigurationFactoryFinder.newServletFactory().
+ * Use EngineConfigurationFactoryFinder.newFactory(yourServletContext).
*
* @author Richard A. Sitze
* @author Glyn Normington (glyn@apache.org)
1.38 +20 -13 xml-axis/java/src/org/apache/axis/configuration/FileProvider.java
Index: FileProvider.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/configuration/FileProvider.java,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- FileProvider.java 9 Sep 2002 17:03:21 -0000 1.37
+++ FileProvider.java 12 Sep 2002 19:12:20 -0000 1.38
@@ -100,19 +100,18 @@
protected static Log log =
LogFactory.getLog(FileProvider.class.getName());
- protected WSDDDeployment deployment = null;
+ private WSDDDeployment deployment = null;
- private static final String CURRENT_DIR = ".";
- protected String filename;
- protected File configFile = null;
+ private String filename;
+ private File configFile = null;
- protected InputStream myInputStream = null;
+ private InputStream myInputStream = null;
- protected boolean readOnly = true;
+ private boolean readOnly = true;
// Should we search the classpath for the file if we don't find it in
// the specified location?
- boolean searchClasspath = true;
+ private boolean searchClasspath = true;
/**
* Constructor which accesses a file in the current directory of the
@@ -169,8 +168,16 @@
* Note: The configuration will be read-only in this case!
*/
public FileProvider(InputStream is) {
+ setInputStream(is);
+ }
+
+ public void setInputStream(InputStream is) {
myInputStream = is;
}
+
+ private InputStream getInputStream() {
+ return myInputStream;
+ }
public WSDDDeployment getDeployment() {
return deployment;
@@ -193,28 +200,28 @@
public void configureEngine(AxisEngine engine)
throws ConfigurationException {
try {
- if (myInputStream == null) {
+ if (getInputStream() == null) {
try {
- myInputStream = new FileInputStream(configFile);
+ setInputStream(new FileInputStream(configFile));
} catch (Exception e) {
if (searchClasspath)
- myInputStream = ClassUtils.getResourceAsStream(engine.getClass(), filename);
+ setInputStream(ClassUtils.getResourceAsStream(engine.getClass(), filename));
}
}
- if (myInputStream == null) {
+ if (getInputStream() == null) {
throw new ConfigurationException(
Messages.getMessage("noConfigFile"));
}
WSDDDocument doc = new WSDDDocument(XMLUtils.
- newDocument(myInputStream));
+ newDocument(getInputStream()));
deployment = doc.getDeployment();
deployment.configureEngine(engine);
engine.refreshGlobalOptions();
- myInputStream = null;
+ setInputStream(null);
} catch (Exception e) {
throw new ConfigurationException(e);
}