When validating the XML files, the system has to load the DTD's or XSD's that are housed at apache.org and opensymphony.org. There's probably a way to disable the XML validation of those files, I haven't had the need to look for it yet. (*Chris*)
On Sun, Jun 22, 2008 at 7:36 PM, Pierre Thibaudeau <[EMAIL PROTECTED]> wrote: > I would love to get to the bottom of a problem that has cropped up a number > of times on this list: > > * On April 29, 2008, I reported that XmlConfigurationProvider was trying to > access the internet. (At the time, I thought the problem might be due to an > incompatibility with a specific version of Tomcat.) > * On March 26, 2008, Nuwan Chandrasoma reports a similar phenomenon to do > with loading validator.xml. > > I experienced anew the problem yesterday, when I could not access the > internet. This time, Struts complains that it can't find struts.xml, > looking for it in the very exact location where it is! When I have internet > access, on the other hand, struts.xml loads without a glitch! Has anyone > got an idea how to prevent Struts from trying to look online for what's > under its nose? > > struts.xml is in the following path: > D:/applications/apache-tomcat-6.0.16/webapps/myapp/WEB-INF/classes/struts.xml > > Version of Struts: 2.1.2 > > Here's struts.xml's header: > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE struts PUBLIC > "-//Apache Software Foundation //DTD Struts Configuration 2.0//EN" > "http://struts.apache.org/dtds/struts-2.0.dtd"> > > Relevant excerpt from web.xml: > <?xml version="1.0" encoding="UTF-8"?> > <web-app id="infloox" > xmlns="http://java.sun.com/xml/ns/j2ee" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee > http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd" > version="2.5"> > ... > <filter> > <filter-name>action2</filter-name> > > <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> > </filter> > <filter-mapping> > <filter-name>action2</filter-name> > <url-pattern>*.action</url-pattern> > </filter-mapping> > > > > And finally here is the relevant part of the error trace when I am offline: > > 16:32:24,199 DEBUG XmlConfigurationProvider:58 - Loading action > configurations from: struts.xml > 2008-06-22 16:32:24 org.apache.catalina.core.StandardContext filterStart > GRAVE: Exception au démarrage du filtre action2 > Unable to load configuration. - Class: java.net.PlainSocketImpl > File: PlainSocketImpl.java > Method: connect > Line: 177 - java/net/PlainSocketImpl.java:177:-1 > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58) > at > org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:371) > at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:424) > at > org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:213) > at > org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275) > at > org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397) > at > org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108) > at > org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709) > at > org.apache.catalina.core.StandardContext.start(StandardContext.java:4356) > at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) > at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) > at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) > at > org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:924) > at > org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:887) > at > org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) > at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147) > at > org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) > at > org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) > at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) > at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) > at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) > at > org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) > at > org.apache.catalina.core.StandardService.start(StandardService.java:516) > at > org.apache.catalina.core.StandardServer.start(StandardServer.java:710) > at org.apache.catalina.startup.Catalina.start(Catalina.java:578) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) > Caused by: Unable to load > file:/D:/applications/apache-tomcat-6.0.16/webapps/myapp/WEB-INF/classes/struts.xml > - Class: java.net.PlainSocketImpl > File: PlainSocketImpl.java > Method: connect > Line: 177 - java/net/PlainSocketImpl.java:177:-1 > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:875) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:161) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:130) > at > com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:155) > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55) > ... 30 more > Caused by: struts.apache.org - Class: java.net.PlainSocketImpl > File: PlainSocketImpl.java > Method: connect > Line: 177 - java/net/PlainSocketImpl.java:177:-1 > at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:122) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:870) > ... 34 more > Caused by: java.net.UnknownHostException: struts.apache.org > at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:177) > at java.net.Socket.connect(Socket.java:518) > at java.net.Socket.connect(Socket.java:468) > at sun.net.NetworkClient.doConnect(NetworkClient.java:157) > at sun.net.www.http.HttpClient.openServer(HttpClient.java:389) > at sun.net.www.http.HttpClient.openServer(HttpClient.java:516) > at sun.net.www.http.HttpClient.<init>(HttpClient.java:233) > at sun.net.www.http.HttpClient.New(HttpClient.java:306) > at sun.net.www.http.HttpClient.New(HttpClient.java:318) > at > sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:788) > at > sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:729) > at > sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:654) > at > sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:977) > at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown > Source) > at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source) > at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown > Source) > at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) > at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown > Source) > at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source) > at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:120) > ... 35 more > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]