ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brandon Goodin <brandon.goo...@gmail.com>
Subject Re: SAXParseException, parsing the sqlMap-config.xml file!
Date Thu, 07 Jul 2005 16:00:36 GMT
Apparently you have an element type that is not in proper order with the DTD.

Caused by: org.xml.sax.SAXParseException: The content of element type
"sqlMapConfig" must match
"(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".

Check your sql map config and make sure your elements are properly ordered.

Brandon

On 7/7/05, erlend.bjorge@aftenposten.no <erlend.bjorge@aftenposten.no> wrote:
>  
> Hi there! 
>   
> In my IntelliJ, in our Resin web applications it all works just fine with
> SQLMap,  but when I tries to 
> run a scheduler job (Quartz) from command prompt using SQLMap from a .bat
> file (I run the job 
> from IntelliJ it works fine) it seems that suddenly the parsing of the
> config file is not working anymore. 
>   
> I have also tried to copy the java command run by IntelliJ, into the bat
> file I'm starting so I get as close as 
> I can get the same "environment" as the one in IntelliJ, still the same
> problem. 
>   
> Does anyone have any clues about what's wrong ? Some kind of conflict with
> the dtd ??? but why now ? 
> Can it be some kind of conflict of .jar files ? Need to change the sequence
> ? Pretty lost here now. 
>   
> Thanks for any clues! 
>   
> Erlend Bjørge 
>   
> -------- 
>   
> Here is the exception I get, check the red line where the exception happens
> in my code, look further down. 
>   
> ------- 
>   
> java.lang.ExceptionInInitializerError
>         at
> no.aftenposten.multimedia.aguiden.bus.facade.FacadeFactory.getFacadeAdmin(FacadeFactory.java:19)
>         at
> no.aftenposten.multimedia.aguiden.bus.common.batch.AGuidenDBUpdater.<init>(AGuidenDBUpdater.java:42)
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at
> java.lang.reflect.Constructor.newInstance(Constructor.java:274)
>         at java.lang.Class.newInstance0(Class.java:308)
>         at java.lang.Class.newInstance(Class.java:261)
>         at
> org.quartz.core.JobRunShell.initialize(JobRunShell.java:135)
>         at
> org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:335)
> Caused by:
> com.ibatis.common.exception.NestedRuntimeException: Error
> occurred.  Cause: com.ibatis.common.xml.NodeletException:
> Error parsing XML.  Cause: org.xml.sax.SAXParseException: The content of
> element type "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionMa
> nager?,sqlMap+)+".
> Caused by: org.xml.sax.SAXParseException: The content of element type
> "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
> Caused by: com.ibatis.common.xml.NodeletException: Error
> parsing XML.  Cause: org.xml.sax.SAXParseException: The content of element
> type "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
> Caused by: org.xml.sax.SAXParseException: The content of element type
> "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
>         at
> com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:81)
>         at
> com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:62)
>         at
> no.aftenposten.multimedia.aguiden.bus.facade.AgFacade.getSqlMapClient(AgFacade.java:39)
>         at
> no.aftenposten.multimedia.aguiden.bus.facade.AgFacade.<clinit>(AgFacade.java:20)
>         ... 10 more
> Caused by: com.ibatis.common.xml.NodeletException: Error
> parsing XML.  Cause: org.xml.sax.SAXParseException: The content of element
> type "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
> Caused by: org.xml.sax.SAXParseException: The content of element type
> "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
>         at
> com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:53)
>         at
> com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:78)
>         ... 13 more
> Caused by: org.xml.sax.SAXParseException: The content of element type
> "sqlMapConfig" must match
> "(properties?,settings?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
>         at
> org.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1213)
>         at
> org.apache.xerces.validators.common.XMLValidator.reportRecoverableXMLError(XMLValidator.java:1851)
>         at
> org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1495)
>         at
> org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1149)
>         at
> org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)
>         at
> org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)
>         at
> org.apache.xerces.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:195)
>         at
> com.ibatis.common.xml.NodeletParser.createDocument(NodeletParser.java:150)
>         at
> com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:50)
>         ... 14 more 
>   
> ---------------------------- 
>   
> Here is my config file with the "correct" header: 
>   
> ------------------------- 
>   
> <?xml version="1.0" encoding="UTF-8" ?>
> <!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
> "http://www.ibatis.com/dtd/sql-map-config-2.dtd"> 
>   
> <sqlMapConfig> 
>   
>     <properties resource="conf/sqlMap-config.properties"/> 
>   
>     <settings
>         cacheModelsEnabled="true"
>         enhancementEnabled="true"
>         lazyLoadingEnabled="true"
>         maxRequests="256"
>         maxSessions="128"
>         maxTransactions="32"
>         useStatementNamespaces="false"/> 
>   
>     <transactionManager type="JDBC"> 
>         <dataSource type="SIMPLE">
>             <property name="JDBC.Driver" value="${driver}"/>
>             <property name="JDBC.ConnectionURL" value="${url}"/>
>             <property name="JDBC.Username" value="${username}"/>
>             <property name="JDBC.Password" value="${password}"/>
> .... 
> ..... 
> ....... 
> ......... 
>   
> </sqlMapConfig> 
>   
> ---------------------------- 
> Here is my getSqlMapClient: 
> ----------------------- 
>   
>     private static SqlMapClient getSqlMapClient() { 
>   
>         String resource =
> "no/aftenposten/multimedia/aguiden/bus/dao/sql/sqlMap-config.xml";
>   
>         Reader reader = null; 
>   
>         try {
>             reader = Resources.getResourceAsReader( resource );
>         } catch ( IOException e ) {
>             System.out.println("############                  GAME OVER -
> SYSTEM.EXIT(-1)                     ############\n"); 
>   
>             System.out.println("############     FATAL ERROR, NOT ABLE TO
> OPEN THE sqlMap-config.xml FILE     ############");
>             System.out.println("############ " + resource + "
> ############");
>             System.out.println("############     FATAL ERROR, NOT ABLE TO
> OPEN THE sqlMap-config.xml FILE     ############");
>             System.exit(-1);
>         } 
>   
>         SqlMapClient sqlMap =
> SqlMapClientBuilder.buildSqlMapClient( reader );   (Line
> 39, See red line in the exception) 
>   
>         return sqlMap;
>     }
>

Mime
View raw message