Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Bug on serverConstructor?

    Following your advice here: http://forums.smartclient.com/showthread.php?t=26985

    I started to write the logging classes but I think there is a smartGWT Bug.

    Test case (adapted from the showcase)

    WorldDSExport.xml
    Code:
        <DataSource  
            ID="worldDSExport"  
            tableName="worldDS"  
            serverType="sql"  
            recordName="country"  
            serverConstructor="zedes2.server.SqlLoggingDataSource"
        >  
            <fields>  
                <field name="pk"            type="sequence"    hidden="true"            primaryKey="true" />  
                <field name="countryCode"   type="text"                   required="true"   />  
                <field name="countryName"   type="text"                 required="true"   />  
                <field name="capital"       type="text"                 />  
                <field name="government"    type="text"              length="500"      />  
                <field name="continent"     type="text"              >  
                </field>  
                <field name="independence"  type="date"                 />  
                <field name="area"          type="float"       />  
                <field name="population"    type="integer"             />  
                <field name="gdp"           type="float"                  />  
                <field name="member_g8"     type="boolean"                      />  
            </fields>  
              
            <operationBindings>  
                <operationBinding operationType="fetch" operationId="customJSONExport">  
                    <exportResults>true</exportResults>  
                    <exportAs>json</exportAs>  
                    <exportFilename>Results.txt</exportFilename>  
                    <lineBreakStyle>dos</lineBreakStyle>  
                </operationBinding>  
            </operationBindings>  
        </DataSource>
    SQLLoggingDataSource.java:
    Code:
    public class SqlLoggingDataSource extends DataSource  {
    
        private static final long serialVersionUID = 1363865609764341340L;
    
        @Override
        public DSResponse executeAdd(DSRequest req) throws Exception {
            DSResponse response = super.executeAdd(req);
            log(req, response);
            return response;
        }
        
        
        public void log(DSRequest request, DSResponse response) {
    	if (response.getAffectedRows()!=0) {
    	    System.out.println("execute add");
    	}
        }
    
    }
    Testing Module (EntryPoint):
    Code:
    public class TestingModule implements EntryPoint {
    
        public void onModuleLoad() {
    
    	DataSource worldDSExport = DataSource.get("worldDSExport");
    
    	final ListGrid countryList = new CountryList();
    	countryList.setWidth(500);
    	countryList.setAlternateRecordStyles(true);
    	countryList.setDataSource(worldDSExport);
    	countryList.setAutoFetchData(false);
    	countryList.setShowFilterEditor(true);
    	countryList.setFilterOnKeypress(true);
    	countryList.setFetchDelay(500);
    
    	ListGridField countryName = new ListGridField("countryName", "Country");
    	ListGridField capital = new ListGridField("capital", "Capital");
    
    	countryList.setFields(countryName, capital);
    	countryList.setAutoFitData(Autofit.VERTICAL);
    	countryList.setShowFilterEditor(true);
    	countryList.setAutoFitMaxRecords(10);
    
    	VLayout layout = new VLayout(15);
    	layout.setAutoHeight();
    
    	HLayout formLayout = new HLayout(15);
    	layout.addMember(formLayout);
    
    	layout.addMember(countryList);
    
    	Criteria c = new Criteria();
    	c.addCriteria("continent", "Europe");
    	countryList.fetchData(c);
    
    	layout.draw();
        }
    
        private class CountryList extends ListGrid implements
    	    FilterEditorSubmitHandler {
    	DSRequest properties;
    
    	public CountryList() {
    	    properties = new DSRequest();
    	    properties.setOperationType(DSOperationType.FETCH);
    	    addFilterEditorSubmitHandler(this);
    	}
    
    	@Override
    	public void fetchData() {
    	    super.fetchData(null, null, properties);
    	}
    
    	@Override
    	public void onFilterEditorSubmit(FilterEditorSubmitEvent event) {
    	    Criteria c = event.getCriteria();
    	    System.out.println("Filter criteria: " + JSON.encode(c.getJsObj()));
    	    fetchData();
    	}
    
        }
    Outcome:
    Code:
    === 2013-06-27 19:10:40,737 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\worldDSExport.ds.xml: 15ms
    === 2013-06-27 19:10:40,737 [l0-0] ERROR DataSourceLoader - Key[type=com.isomorphic.servlet.DataSourceLoader, annotation=[none]] - Exception while attempting to load a DataSource
    java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map
    	at com.isomorphic.datasource.DeclarativeSecurity.annotateDataSourceFields(DeclarativeSecurity.java:740)
    	at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:135)
    	at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
    	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
    	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
    	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
    	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
    	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:324)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
    	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
    	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
    	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
    	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
    === 2013-06-27 19:10:40,737 [l0-0] ERROR DataSourceLoader - Key[type=com.isomorphic.servlet.DataSourceLoader, annotation=[none]] - Top-level servlet error: 
    javax.servlet.ServletException: java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map
    	at com.isomorphic.datasource.DeclarativeSecurity.annotateDataSourceFields(DeclarativeSecurity.java:740)
    	at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:135)
    	at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
    	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
    	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
    	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
    	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
    	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:324)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
    	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
    	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
    	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
    	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
    
    	at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:185)
    	at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
    	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
    	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
    	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
    	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
    	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
    	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
    	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
    	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:324)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
    	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
    	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
    	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
    	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
    === 2013-06-27 19:10:40,737 [l0-0] INFO  Compression - /zedes2/sc/DataSourceLoader: 121324 -> 17428 bytes
    As soon as I take away the serverConstructor="zedes2.server.SqlLoggingDataSource", no error occurs. But if I put the serverConstructor the error shown above occurs.

    Using SmartGWT 3.1p EE 21-05-13.
    But I also tried with the actual nightly (2013-06-26) and also with the 4.1d (2013-06-27) and still I get this error.

    #2
    Please double-check this result. It makes no sense at all, and there is probably actually some other different between the way you are testing with serverConstructor and without. Specifically, this error normally occurs if your deployment is missing war/sc/system/schema because you forgot to run a GWT compile.

    Comment


      #3
      I double checked the result, and it is the same:

      if I delete the line
      Code:
      serverConstructor="zedes2.server.SqlLoggingDataSource"
      everything works.
      If I put it again, I get the error.

      If I then delete it again, it again works. So I don't change anything else, only the line from worldDSExport.ds.xml.

      The complete log is here:
      Code:
      Starting Jetty on port 8888
         [WARN] Unknown realm: MyRealm
      ISC: Configuring log4j from: file:/C:/Users/Eduardo/git/zedes2/zedes2/war/WEB-INF/classes/log4j.isc.config.xml
      === 2013-06-27 23:37:05,345 [main] INFO  ISCInit - Isomorphic SmartClient/SmartGWT Framework - Initializing
      === 2013-06-27 23:37:05,351 [main] INFO  ConfigLoader - Attempting to load framework.properties from CLASSPATH
      === 2013-06-27 23:37:05,410 [main] INFO  ConfigLoader - Successfully loaded framework.properties from CLASSPATH at location: jar:file:/C:/Users/Eduardo/git/zedes2/zedes2/war/WEB-INF/lib/isomorphic_core_rpc.jar!/framework.properties
      === 2013-06-27 23:37:05,410 [main] INFO  ConfigLoader - Attempting to load project.properties from CLASSPATH
      === 2013-06-27 23:37:05,410 [main] INFO  ConfigLoader - Unable to locate project.properties in CLASSPATH
      === 2013-06-27 23:37:05,413 [main] INFO  ConfigLoader - Successfully loaded isc_interfaces.properties from CLASSPATH at location: jar:file:/C:/Users/Eduardo/git/zedes2/zedes2/war/WEB-INF/lib/isomorphic_core_rpc.jar!/isc_interfaces.properties
      === 2013-06-27 23:37:05,413 [main] INFO  ConfigLoader - Attempting to load server.properties from CLASSPATH
      === 2013-06-27 23:37:05,414 [main] INFO  ConfigLoader - Successfully loaded server.properties from CLASSPATH at location: file:/C:/Users/Eduardo/git/zedes2/zedes2/war/WEB-INF/classes/server.properties
      === 2013-06-27 23:37:05,418 [main] INFO  Logger - Logging system started.
      === 2013-06-27 23:37:05,419 [main] INFO  ISCInit - Isomorphic SmartClient/SmartGWT Framework (v8.3p_2013-05-21/EVAL Deployment 2013-05-21) - Initialization Complete
      === 2013-06-27 23:37:05,421 [main] INFO  ISCInit - Auto-detected webRoot - using: C:\Users\Eduardo\git\zedes2\zedes2\war
      === 2013-06-27 23:37:05,427 [main] INFO  ISCInit - Isomorphic SmartClient/SmartGWT Framework initialization called from com.isomorphic.base.Base
      === 2013-06-27 23:37:05,427 [main] INFO  ISCInit - Isomorphic SmartClient/SmartGWT Framework is already initialized
      === 2013-06-27 23:37:05,452 [main] INFO  ISCInit - Isomorphic SmartClient/SmartGWT Framework initialization called from com.isomorphic.base.Init
      === 2013-06-27 23:37:05,452 [main] INFO  ISCInit - Isomorphic SmartClient/SmartGWT Framework is already initialized
      === 2013-06-27 23:37:05,487 [main] INFO  HttpProxyServlet - Key[type=com.isomorphic.servlet.HttpProxyServlet, annotation=[none]] - No rules defined - proxying all incoming URLs.
      === 2013-06-27 23:37:05,804 [main] INFO  PreCache - Isomorphic PreCache servlet loading
      === 2013-06-27 23:37:05,816 [main] INFO  PoolManager - SmartClient pooling disabled for 'DataSource' objects
      === 2013-06-27 23:37:05,850 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\builtinTypes.xml: 5ms
      === 2013-06-27 23:37:05,897 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\DataSource.ds.xml: 5ms
      === 2013-06-27 23:37:05,923 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\DataSourceField.ds.xml: 5ms
      === 2013-06-27 23:37:05,938 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\Validator.ds.xml: 2ms
      === 2013-06-27 23:37:05,950 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\ValueMap.ds.xml: 2ms
      === 2013-06-27 23:37:05,956 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\InstantDataApp.ds.xml: 3ms
      === 2013-06-27 23:37:05,997 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\Application.ds.xml: 2ms
      === 2013-06-27 23:37:06,003 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\IDAPage.ds.xml: 2ms
      === 2013-06-27 23:37:06,009 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\IDAUserType.ds.xml: 2ms
      === 2013-06-27 23:37:06,016 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\IDAOperation.ds.xml: 3ms
      === 2013-06-27 23:37:06,032 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\Canvas.ds.xml: 9ms
      === 2013-06-27 23:37:06,062 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\MethodDeclaration.ds.xml: 2ms
      === 2013-06-27 23:37:06,069 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\Img.ds.xml: 2ms
      === 2013-06-27 23:37:06,077 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\StatefulCanvas.ds.xml: 2ms
      === 2013-06-27 23:37:06,095 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\Button.ds.xml: 2ms
      === 2013-06-27 23:37:06,099 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\ListViewer.ds.xml: 1ms
      === 2013-06-27 23:37:06,104 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\ListGrid.ds.xml: 4ms
      === 2013-06-27 23:37:06,121 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\DynamicForm.ds.xml: 2ms
      === 2013-06-27 23:37:06,129 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\FormItem.ds.xml: 2ms
      === 2013-06-27 23:37:06,143 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\DetailViewer.ds.xml: 2ms
      === 2013-06-27 23:37:06,151 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\DetailViewerField.ds.xml: 2ms
      === 2013-06-27 23:37:06,155 [main] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\isomorphicXML.ds.xml: 1ms
      === 2013-06-27 23:37:06,156 [main] INFO  PreCache - Isomorphic PreCache complete (352ms)
      === 2013-06-27 23:37:10,713 [l0-0] INFO  RequestContext - URL: '/zedes2/sc/DataSourceLoader', User-Agent: 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0': Moz (Gecko) with Accept-Encoding header
      === 2013-06-27 23:37:10,719 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\schuelerSimple.ds.xml: 1ms
      === 2013-06-27 23:37:10,723 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\OperationBinding.ds.xml: 2ms
      === 2013-06-27 23:37:10,777 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\schuelerDetails.ds.xml: 3ms
      === 2013-06-27 23:37:10,791 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\zedes2\sc\system\schema\ServerObject.ds.xml: 2ms
      === 2013-06-27 23:37:10,818 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\schueler.ds.xml: 2ms
      === 2013-06-27 23:37:10,839 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\aufgaben.ds.xml: 2ms
      === 2013-06-27 23:37:10,848 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\notizen.ds.xml: 2ms
      === 2013-06-27 23:37:10,860 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\dokumente.ds.xml: 2ms
      === 2013-06-27 23:37:10,876 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\laender.ds.xml: 2ms
      === 2013-06-27 23:37:10,885 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\geoData.ds.xml: 2ms
      === 2013-06-27 23:37:10,899 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\feldPositionen.ds.xml: 2ms
      === 2013-06-27 23:37:10,917 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\geschlecht.ds.xml: 2ms
      === 2013-06-27 23:37:10,932 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\religion.ds.xml: 3ms
      === 2013-06-27 23:37:10,939 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\stufen.ds.xml: 2ms
      === 2013-06-27 23:37:10,954 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\anreden.ds.xml: 1ms
      === 2013-06-27 23:37:10,956 [l0-2] INFO  Compression - /zedes2/sc/modules/ISC_Core.js: 794801 -> 208144 bytes
      === 2013-06-27 23:37:10,965 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\rollen.ds.xml: 2ms
      === 2013-06-27 23:37:10,972 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\logs.ds.xml: 2ms
      === 2013-06-27 23:37:10,983 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\reports.ds.xml: 1ms
      === 2013-06-27 23:37:10,989 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\adressen.ds.xml: 2ms
      === 2013-06-27 23:37:10,998 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\titelHart.ds.xml: 2ms
      === 2013-06-27 23:37:11,005 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\titelAnrede.ds.xml: 2ms
      === 2013-06-27 23:37:11,012 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\mapSchuelerFormVirtualFields.ds.xml: 2ms
      === 2013-06-27 23:37:11,028 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\eltern.ds.xml: 11ms
      === 2013-06-27 23:37:11,042 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\relSchuelerEltern.ds.xml: 2ms
      === 2013-06-27 23:37:11,049 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\einrichtungenKategorien.ds.xml: 2ms
      === 2013-06-27 23:37:11,055 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\einrichtungen.ds.xml: 2ms
      === 2013-06-27 23:37:11,062 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\vertragStatus.ds.xml: 2ms
      === 2013-06-27 23:37:11,068 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\einrichtungenMitKategorien.ds.xml: 1ms
      === 2013-06-27 23:37:11,075 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\einrichtungTreeNodes.ds.xml: 2ms
      === 2013-06-27 23:37:11,084 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\vertraege.ds.xml: 2ms
      === 2013-06-27 23:37:11,095 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\einrichtungenKategorienPages.ds.xml: 2ms
      === 2013-06-27 23:37:11,100 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\gemeinsameEinrichtungenComponents.ds.xml: 1ms
      === 2013-06-27 23:37:11,106 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\gemeinsameEinrichtungenVertraege.ds.xml: 1ms
      === 2013-06-27 23:37:11,113 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\gemeinsameEinrichtungenGruppen.ds.xml: 2ms
      === 2013-06-27 23:37:11,126 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\users.ds.xml: 2ms
      === 2013-06-27 23:37:11,133 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\geschwister.ds.xml: 2ms
      === 2013-06-27 23:37:11,140 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\schuelerListeFields.ds.xml: 2ms
      === 2013-06-27 23:37:11,147 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\schuelerListeFieldsVarianten.ds.xml: 2ms
      === 2013-06-27 23:37:11,153 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\stammSchuelerListeFields.ds.xml: 2ms
      === 2013-06-27 23:37:11,159 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\geschwisterNewGruppeId.ds.xml: 2ms
      === 2013-06-27 23:37:11,164 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\klassenAuswahl.ds.xml: 2ms
      === 2013-06-27 23:37:11,170 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\rabatt.ds.xml: 2ms
      === 2013-06-27 23:37:11,176 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\zahlendePartei.ds.xml: 2ms
      === 2013-06-27 23:37:11,181 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\bildungsgaenge.ds.xml: 2ms
      === 2013-06-27 23:37:11,190 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\relVertragBildungsgang.ds.xml: 2ms
      === 2013-06-27 23:37:11,197 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\gemeinsameEinrichtungenPrios.ds.xml: 2ms
      === 2013-06-27 23:37:11,204 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\vormerkungen.ds.xml: 2ms
      === 2013-06-27 23:37:11,215 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\briefVorlageFields.ds.xml: 2ms
      === 2013-06-27 23:37:11,221 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\vertraegeBriefVorlage.ds.xml: 2ms
      === 2013-06-27 23:37:11,233 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\tmpBriefVorlagen.ds.xml: 1ms
      === 2013-06-27 23:37:11,239 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\ansprechpartner.ds.xml: 2ms
      [WARN] Server class 'org.apache.xalan.processor.TransformerFactoryImpl' could not be found in the web app, but was found on the system classpath
         [WARN] Adding classpath entry 'file:/C:/Program%20Files%20(x86)/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.5.0.v201212122042-rel-r42/gwt-2.5.0/gwt-dev.jar' to the web app classpath for this session
         For additional info see: file:/C:/Program%20Files%20(x86)/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.5.0.v201212122042-rel-r42/gwt-2.5.0/doc/helpInfo/webAppClassPath.html
      === 2013-06-27 23:37:11,352 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\settings.ds.xml: 1ms
      === 2013-06-27 23:37:11,357 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\dokumenteServer.ds.xml: 2ms
      === 2013-06-27 23:37:11,364 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\briefe.ds.xml: 2ms
      === 2013-06-27 23:37:11,374 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\users_table.ds.xml: 2ms
      === 2013-06-27 23:37:11,383 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\users_passwort.ds.xml: 2ms
      === 2013-06-27 23:37:11,388 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\berechtigungen.ds.xml: 1ms
      === 2013-06-27 23:37:11,393 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\dynamicFileDownload.ds.xml: 1ms
      === 2013-06-27 23:37:11,397 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\excelVertrag.ds.xml: 2ms
      === 2013-06-27 23:37:11,407 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\session.ds.xml: 1ms
      === 2013-06-27 23:37:11,411 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\dokumenteHandler.ds.xml: 2ms
      === 2013-06-27 23:37:11,417 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\einrichtungChangeResetFields.ds.xml: 2ms
      === 2013-06-27 23:37:11,422 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\relEinrichtungBildungsgangGruppen.ds.xml: 2ms
      === 2013-06-27 23:37:11,428 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\notizen_table.ds.xml: 2ms
      === 2013-06-27 23:37:11,433 [l0-0] DEBUG XML - Parsed XML from C:\Users\Eduardo\git\zedes2\zedes2\war\ds\worldDSExport.ds.xml: 1ms
      === 2013-06-27 23:37:11,437 [l0-0] ERROR DataSourceLoader - Key[type=com.isomorphic.servlet.DataSourceLoader, annotation=[none]] - Exception while attempting to load a DataSource
      java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map
      	at com.isomorphic.datasource.DeclarativeSecurity.annotateDataSourceFields(DeclarativeSecurity.java:740)
      	at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:135)
      	at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
      	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
      	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
      	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
      	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
      	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
      	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
      	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
      	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
      	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
      	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
      	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
      	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      	at org.mortbay.jetty.Server.handle(Server.java:324)
      	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
      	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
      === 2013-06-27 23:37:11,438 [l0-0] ERROR DataSourceLoader - Key[type=com.isomorphic.servlet.DataSourceLoader, annotation=[none]] - Top-level servlet error: 
      javax.servlet.ServletException: java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map
      	at com.isomorphic.datasource.DeclarativeSecurity.annotateDataSourceFields(DeclarativeSecurity.java:740)
      	at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:135)
      	at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
      	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
      	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
      	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
      	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
      	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
      	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
      	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
      	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
      	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
      	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
      	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
      	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      	at org.mortbay.jetty.Server.handle(Server.java:324)
      	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
      	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
      
      	at com.isomorphic.servlet.DataSourceLoader.processRequest(DataSourceLoader.java:185)
      	at com.isomorphic.servlet.DataSourceLoader.doGet(DataSourceLoader.java:94)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
      	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
      	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
      	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
      	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
      	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
      	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
      	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
      	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
      	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
      	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
      	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
      	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      	at org.mortbay.jetty.Server.handle(Server.java:324)
      	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
      	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
      	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
      === 2013-06-27 23:37:11,441 [l0-0] INFO  Compression - /zedes2/sc/DataSourceLoader: 121324 -> 17428 bytes

      Comment


        #4
        Shouldn't you be extending SQLDataSource?

        Comment


          #5
          bbruyn is quite right, and actually, that could explain your issue (thanks bbruyn).

          Comment


            #6
            THANK YOU!
            I actually thought I extended SQLDataSource.
            It seems to work now.

            Comment

            Working...
            X