Announcement

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

  • itaca
    replied
    Added the lib isomorphic_sql.jar and its missing deps.

    According to the tomcat log error, I add the isomorphic_sql.jar lib and the following missing deps from SDK libs
    * commons-dbcp-1.2.2.jar
    * hsqldb-1.8.0.10.jar
    Do I need javax.persistence.jar ?

    Code:
    === 2012-08-24 10:22:39,789 [ec-7] ERROR InterfaceProvider - Unable to instantiate class 'com.isomorphic.sql.SQLDataSource' - 
    check to make sure you have isomorphic_sql.jar (and its dependencies: 
    isomorphic_core_rpc.jar, 
    velocity-1.6.1.jar, 
    commons-lang-2.4.jar, 
    commons-httpclient-3.1.jar, 
    poi-ooxml-schemas-3.6-20091214.jar, 
    commons-jxpath-1.3.jar, 
    groovy-all-1.8.7.jar, 
    devenv/postgresql-9.0-801.jdbc4.jar, 
    hibernate-validator-4.1.0.Final.jar, 
    commons-pool-1.4.jar, 
    devenv/mysql_connector_java_5.0.5.bin.jar, 
    => commons-dbcp-1.2.2.jar, 
    UNKNOWN> javax.persistence.jar,
    poi-ooxml-3.6-20091214.jar, 
    mail.jar, 
    poi-3.6-20091214.jar, 
    commons-cli-1.1.jar, 
    xercesImpl.jar, 
    commons-fileupload-1.2.1.jar, 
    commons-vfs-1.0.jar, 
    log4j-1.2.15.jar, 
    xbean.jar, 
    xml-apis.jar, 
    activation.jar, 
    => hsqldb-1.8.0.10.jar, 
    validation-api-1.0.0.GA.jar, 
    java-engine_noDebug.jar, 
    isc-jakarta-oro-2.0.6.jar, 
    commons-codec-1.3.jar, 
    commons-collections-3.2.1.jar, 
    java-engine.jar
    ) in your CLASSPATH
    === 2012-08-24 10:22:39,791 [ec-7] ERROR IDACall - Top-level servlet error:
    Now, I have a java.lang.NoClassDefFoundError: com/isomorphic/interfaces/ISQLDataSource


    Code:
    === 2012-08-24 10:48:39,074 [ec-4] ERROR IDACall - Top-level servlet error:
    java.lang.NoClassDefFoundError: com/isomorphic/interfaces/ISQLDataSource
            at java.lang.ClassLoader.defineClass1(Native Method)
            at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
            at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
            at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
            at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
            at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
            at java.lang.Class.forName0(Native Method)
            at java.lang.Class.forName(Class.java:264)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1698)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
            at java.lang.Class.forName0(Native Method)
            at java.lang.Class.forName(Class.java:264)
            at com.isomorphic.base.Reflection.classForName(Reflection.java:137)
            at com.isomorphic.base.Reflection.getClassCache(Reflection.java:470)
            at com.isomorphic.base.Reflection.instantiateClass(Reflection.java:188)
            at com.isomorphic.base.Reflection.instantiateClass(Reflection.java:172)
            at com.isomorphic.interfaces.InterfaceProvider.load(InterfaceProvider.java:92)
            at com.isomorphic.datasource.BasicDataSource.fromConfig(BasicDataSource.java:143)
            at com.isomorphic.datasource.DataSource.fromConfig(DataSource.java:359)
            at com.isomorphic.datasource.FileSystemDSRepo.loadDS(FileSystemDSRepo.java:110)
            at com.isomorphic.datasource.DataSource.forName(DataSource.java:178)
            at com.isomorphic.datasource.DataSource.forName(DataSource.java:170)
            at com.isomorphic.datasource.DataSource.forName(DataSource.java:165)
            at com.isomorphic.datasource.PoolableDataSourceFactory.makeUnpooledObject(PoolableDataSourceFactory.java:95)
            at com.isomorphic.datasource.PoolableDataSourceFactory.makeObject(PoolableDataSourceFactory.java:102)
            at com.isomorphic.pool.PoolManager.borrowObject(PoolManager.java:82)
            at com.isomorphic.datasource.DataSourceManager.getDataSource(DataSourceManager.java:87)
            at com.isomorphic.datasource.DSRequest.getDataSource(DSRequest.java:1739)
            at com.isomorphic.rpc.RPCManager.parseRequest(RPCManager.java:1940)
            at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:296)
            at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:281)
            at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:116)
            at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
            at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
            at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
            at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
            at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
            at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
            at java.lang.Thread.run(Thread.java:679)
    Caused by: java.lang.ClassNotFoundException: com.isomorphic.interfaces.ISQLDataSource
            at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
            ... 59 more

    Leave a comment:


  • itaca
    replied
    Installed files and procedure

    According to my understanding I did all the steps described in the articles Deploying SmartClient and The Core And Optional SmartClient servlets
    Here below is given the list of files installed

    Code:
    find ./moce -exec cksum {} \;
    
    1185191894 104 			./moce/css/its_iso.css
    1706451047 11683 		./moce/css/ITS.css
    4270765735 1570			./moce/debug.html
    2323534782 1575 		./moce/loader.html
    3132805596 1711 		./moce/app.js
    2794250846 3050   	./moce/WEB-INF/classes/server.properties.old
    1845943260 3731   	./moce/WEB-INF/classes/server.properties.new
    1162423158 3756   	./moce/WEB-INF/classes/server.properties
    1716949390 5236   	./moce/WEB-INF/classes/log4j.isc.config.xml
    891718727 6124    	./moce/WEB-INF/web.xml
    617540762 11874 		./moce/WEB-INF/iscTaglib.xml
    1349091522 261809 	./moce/WEB-INF/lib/commons-lang-2.4.jar
    3501436449 2694049 	./moce/WEB-INF/lib/xbean.jar
    2668348472 412783 	./moce/WEB-INF/lib/poi-ooxml-3.6-20091214.jar
    713436669 16486 		./moce/WEB-INF/lib/java-engine.jar
    182425699 1010675 	./moce/WEB-INF/lib/xercesImpl.jar
    2018374134 788218 	./moce/WEB-INF/lib/isomorphic_core_rpc.jar
    323059158 16486 		./moce/WEB-INF/lib/java-engine_noDebug.jar
    3413414463 124724 	./moce/WEB-INF/lib/xml-apis.jar
    3897738352 7810 		./moce/WEB-INF/lib/isomorphic_compression.jar
    1832942869 1933743 	./moce/WEB-INF/lib/ant.jar
    2715120493 6208068 	./moce/WEB-INF/lib/groovy-all-1.8.7.jar
    4182719474 87077 		./moce/WEB-INF/lib/commons-pool-1.4.jar
    4229924666 66221 		./moce/WEB-INF/lib/isc-jakarta-oro-2.0.6.jar
    2971163573 3774332 	./moce/WEB-INF/lib/poi-ooxml-schemas-3.6-20091214.jar
    1222884249 17963 		./moce/WEB-INF/lib/isomorphic_realtime_messaging.jar
    4138839741 362717 	./moce/WEB-INF/lib/commons-vfs-1.0.jar
    2596177407 551290 	./moce/WEB-INF/lib/postgresql-9.1-901.jdbc4.jar
    4178324908 419521 	./moce/WEB-INF/lib/velocity-1.6.1.jar
    1078910212 391834 	./moce/WEB-INF/lib/log4j-1.2.15.jar
    2184079354 57779 		./moce/WEB-INF/lib/commons-fileupload-1.2.1.jar
    501917056 299994 		./moce/WEB-INF/lib/commons-jxpath-1.3.jar
    4026385806 287706 	./moce/WEB-INF/lib/hibernate-validator-4.1.0.Final.jar
    1500332227 305001 	./moce/WEB-INF/lib/commons-httpclient-3.1.jar
    1050749156 434812 	./moce/WEB-INF/lib/mail.jar
    25111230 54829 			./moce/WEB-INF/lib/activation.jar
    1390480550 28656 		./moce/WEB-INF/lib/isomorphic_js_parser.jar
    4136437624 47433 		./moce/WEB-INF/lib/validation-api-1.0.0.GA.jar
    1503406446 31142 		./moce/WEB-INF/lib/isomorphic_assembly.jar
    2175159679 46725 		./moce/WEB-INF/lib/commons-codec-1.3.jar
    3657732376 36174 		./moce/WEB-INF/lib/commons-cli-1.1.jar
    2972995801 575389 	./moce/WEB-INF/lib/commons-collections-3.2.1.jar
    1417850767 1539291 	./moce/WEB-INF/lib/poi-3.6-20091214.jar
    891718727 6124 			./moce/WEB-INF/web.xml.runtime
    4019090930 16672 		./moce/WEB-INF/web.xml.sdk
    522231423 2756 			./moce/WEB-INF/licenses/log4j-1.2.15_license.txt
    2897504417 11560 		./moce/WEB-INF/licenses/commons-httpclient-3.1_license.txt
    1169270031 2827 		./moce/WEB-INF/licenses/xml-apis_license.txt
    2897504417 11560 		./moce/WEB-INF/licenses/commons-cli-1.1_license.txt
    1627374496 11358 		./moce/WEB-INF/licenses/commons-lang-2.4_license.txt
    2325659003 1530 		./moce/WEB-INF/licenses/java-engine_license.txt
    1627374496 11358 		./moce/WEB-INF/licenses/hibernate-validator-4.1.0.Final_license.txt
    1627374496 11358 		./moce/WEB-INF/licenses/velocity-1.6.1_license.txt
    1169270031 2827 		./moce/WEB-INF/licenses/xercesImpl_license.txt
    2897504417 11560 		./moce/WEB-INF/licenses/commons-pool-1.4_license.txt
    2897504417 11560 		./moce/WEB-INF/licenses/commons-codec-1.3_license.txt
    2897504417 11560 		./moce/WEB-INF/licenses/commons-fileupload-1.2.1_license.txt
    2897504417 11560 		./moce/WEB-INF/licenses/commons-jxpath-1.3_license.txt
    290343678 2825 			./moce/WEB-INF/licenses/isc-jakarta-oro-2.0.6_license.txt
    1627374496 11358 		./moce/WEB-INF/licenses/commons-vfs-1.0_license.txt
    499037884 1988 			./moce/WEB-INF/licenses/groovy-all-1.8.7_license.txt
    2325659003 1530 		./moce/WEB-INF/licenses/java-engine_noDebug_license.txt
    1627374496 11358 		./moce/WEB-INF/licenses/commons-collections-3.2.1_license.txt
    1479546039 1572 		./moce/index.html
    2498516963 848 			./moce/ds/its_ds_menu_tree.ds.xml
    1935500421 870 			./moce/ds/its_ds_contact_email.ds.xml
    347600796 1717 			./moce/ds/its_ds_contact.ds.xml
    1679193567 809 			./moce/ds/its_ds_list_data.ds.xml
    2939370835 949 			./moce/ds/its_ds_contact_phone.ds.xml
    1511178220 4472 		./moce/ds/ds.js
    Last edited by itaca; 24 Aug 2012, 00:10.

    Leave a comment:


  • Isomorphic
    replied
    You really just need to follow the install instructions, and be sure not to skip steps.. in this case you decided to only copy some of the .jars, the install instructions tell you to copy them all, then remove .jars only once you've established you aren't using specific ones.

    Leave a comment:


  • itaca
    replied
    Still having errors...

    I have been checking the web.xml servlet definitions and tried several times unsucessfully, finally mapping the isomorphic directory in the same directory of the application in order to avoid url relative path mismatch, I got an answer 200 in the POST /moce/isomorphic/IDACall?isc_rpc=1&isc_v=v8.2p_2012-08-14&isc_xhr=1 instead of the constant 400 transport error, but still with the following error in the body content:

    Code:
    java.lang.ClassNotFoundException: com.isomorphic.sql.SQLDataSource
    	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711)
    	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
    	at java.lang.Class.forName0(Native Method)
    	at java.lang.Class.forName(Class.java:169)
    	at com.isomorphic.base.Reflection.classForName(Reflection.java:139)
    	at com.isomorphic.base.Reflection.getClassCache(Reflection.java:470)
    	at com.isomorphic.base.Reflection.instantiateClass(Reflection.java:188)
    	at com.isomorphic.base.Reflection.instantiateClass(Reflection.java:172)
    	at com.isomorphic.interfaces.InterfaceProvider.load(InterfaceProvider.java:92)
    	at com.isomorphic.datasource.BasicDataSource.fromConfig(BasicDataSource.java:143)
    	at com.isomorphic.datasource.DataSource.fromConfig(DataSource.java:359)
    	at com.isomorphic.datasource.FileSystemDSRepo.loadDS(FileSystemDSRepo.java:110)
    	at com.isomorphic.datasource.DataSource.forName(DataSource.java:178)
    	at com.isomorphic.datasource.DataSource.forName(DataSource.java:170)
    	at com.isomorphic.datasource.DataSource.forName(DataSource.java:165)
    	at com.isomorphic.datasource.PoolableDataSourceFactory.makeUnpooledObject(PoolableDataSourceFactory.java:95)
    	at com.isomorphic.datasource.PoolableDataSourceFactory.makeObject(PoolableDataSourceFactory.java:102)
    	at com.isomorphic.pool.PoolManager.borrowObject(PoolManager.java:82)
    	at com.isomorphic.datasource.DataSourceManager.getDataSource(DataSourceManager.java:87)
    	at com.isomorphic.datasource.DSRequest.getDataSource(DSRequest.java:1739)
    	at com.isomorphic.rpc.RPCManager.parseRequest(RPCManager.java:1940)
    	at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:296)
    	at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:281)
    	at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:116)
    	at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    	at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    This woks till here with the call <script src="ds/ds.js"></script> instead of <script SRC=../isomorphic/DataSourceLoader?dataSource=its_ds_contact></script>

    And again the DataSourceLoader command in index.html blocks.
    Could you please help me to solve the issues ?
    Thanks,
    Itaca

    Note: These files are place in the tomcat 7 webapps dir in an application directory called moce.
    1) File moce/index.html. Same as given above except that ../isomorphic/ is replaced by isomorphic/
    2) File moce/app.js. Same as given above.
    3) File moce/ds/ds.js Same as given above.
    4) Directory moce/isomorphic. Same as given in smartclientRuntime distrib except that the skin enterprise has been added.
    5) File moce/WEB-INF/iscTaglib.xml. Same as given in smartclientRuntime distrib.
    6) File moce/WEB-INF/web.xml. Defined in accordance with smartclientRuntime as follows:
    Code:
    <web-app 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_4.xsd"
                  version="2.4">
    
        <!-- Note: The servlets/filters referenced here are documented in the SDK javadoc -->
    
        <!-- //>FileLoader -->
        <!-- Dynamic Compression -->
        <filter>
            <filter-name>CompressionFilter</filter-name>
            <filter-class>com.isomorphic.servlet.CompressionFilter</filter-class>
        </filter>
        <!-- CompressionFilter for dynamic compression -->
        <filter-mapping>
            <filter-name>CompressionFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
        <!-- //<FileLoader -->
    
        <!-- The IDACall servlet handles all Built-in DataSource operations -->
        <servlet>
            <servlet-name>IDACall</servlet-name>
            <servlet-class>com.isomorphic.servlet.IDACall</servlet-class>
        </servlet>
    
        <servlet>
            <servlet-name>XMLSelect</servlet-name>
            <servlet-class>com.isomorphic.xml.XMLSelectServlet</servlet-class>
        </servlet>
    
        <!-- The RESTHandler servlet handles SmartClient Server DataSource operations issued by
             REST clients - it's like IDACall, but for the REST protocol.  Typically,  the clients
             of this servlet would not be ordinary SmartClient/SmartGWT applications (though they
             could be), but other client technologies that need to access SmartClient DataSource
             operations as reusable services -->
        <servlet>
            <servlet-name>RESTHandler</servlet-name>
            <servlet-class>com.isomorphic.servlet.RESTHandler</servlet-class>
        </servlet>
    
        <!-- The DataSourceLoader servlet returns Javascript representations of the dataSources whose
             ID's are passed to it - it is an alternative to using the <loadDS> JSP tag -->
        <servlet>
            <servlet-name>DataSourceLoader</servlet-name>
            <servlet-class>com.isomorphic.servlet.DataSourceLoader</servlet-class>
        </servlet>
    
        <!-- The FileDownload servlet downloads static files, like a webserver -->
        <servlet>
            <servlet-name>FileDownload</servlet-name>
            <servlet-class>com.isomorphic.servlet.FileDownload</servlet-class>
        </servlet>
    
            <!-- ISC init: initializes ISC framework -->
        <servlet>
            <servlet-name>Init</servlet-name>
            <servlet-class>com.isomorphic.base.Init</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
        <servlet>
            <servlet-name>HttpProxy</servlet-name>
            <servlet-class>com.isomorphic.servlet.HttpProxyServlet</servlet-class>
        </servlet>
    
        <!-- The PreCache servlet initializes when the servlet engine starts up and pre-loads
             data need for all client requests.  This is optional, and improves performance
             of the first few page requests.  PreCache cannot be invoked by a browser, because
             there is no "servlet-mapping" defined for it. -->
        <servlet>
            <servlet-name>PreCache</servlet-name>
            <servlet-class>com.isomorphic.servlet.PreCache</servlet-class>
            <load-on-startup>2</load-on-startup>
        </servlet>
    
        <!-- RPCManager uses this URL by default for Built-in DataSource operations -->
        <servlet-mapping>
            <servlet-name>IDACall</servlet-name>
            <url-pattern>/isomorphic/IDACall/*</url-pattern>
        </servlet-mapping>
    
        <!-- Built-in DataSource operations backcompat -->
        <servlet-mapping>
            <servlet-name>IDACall</servlet-name>
            <url-pattern>/isomorphic/IDACall.aspx/*</url-pattern>
        </servlet-mapping>
    
        <!-- DataSourceLoader requests -->
        <servlet-mapping>
            <servlet-name>DataSourceLoader</servlet-name>
            <url-pattern>/isomorphic/DataSourceLoader</url-pattern>
        </servlet-mapping>
    
        <servlet-mapping>
            <servlet-name>HttpProxy</servlet-name>
            <url-pattern>/isomorphic/HttpProxy/*</url-pattern>
        </servlet-mapping>
    
        <!-- Use FileDownload servlet to download all static content that's part of the skin, such as
             image files, so we can set Expires headers and other cache control directives.  In a
             production deployment, you'd want to use a webserver such as Apache to do this.
        -->
        <servlet-mapping>
          <servlet-name>FileDownload</servlet-name>
          <url-pattern>/isomorphic/skins/*</url-pattern>
        </servlet-mapping>
    
        <!-- serve ISC modules compressed, with expires headers -->
        <servlet-mapping>
            <servlet-name>FileDownload</servlet-name>
            <url-pattern>/isomorphic/system/modules/*</url-pattern>
        </servlet-mapping>
    
        <!-- serve ISC development modules compressed, with expires headers -->
        <servlet-mapping>
            <servlet-name>FileDownload</servlet-name>
            <url-pattern>/isomorphic/system/development/*</url-pattern>
        </servlet-mapping>
    
        <!-- server skin assets with expires headers -->
        <servlet-mapping>
            <servlet-name>FileDownload</servlet-name>
            <url-pattern>/isomorphic/system/reference/skin/*</url-pattern>
        </servlet-mapping>
    
        <!-- General config -->
        <session-config>
            <session-timeout>30</session-timeout>
        </session-config>
    
        <jsp-config>
            <!-- Isomorphic JSP tags -->
            <taglib>
                <taglib-uri>isomorphic</taglib-uri>
                <taglib-location>/WEB-INF/iscTaglib.xml</taglib-location>
            </taglib>
            <!-- Serve *.isc files with iscHeader/iscFooter -->
            <jsp-property-group>
                <url-pattern>*.isc</url-pattern>
                <include-prelude>/shared/jsp/iscHeader.jsp</include-prelude>
                <include-coda>/shared/jsp/iscFooter.jsp</include-coda>
            </jsp-property-group>
    
            <!-- Process *.rpc files as RPC requests - puts you in an iterator over current RPC requests -->
            <jsp-property-group>
                <url-pattern>*.rpc</url-pattern>
                <include-prelude>/shared/jsp/rpcHeader.jsp</include-prelude>
                <include-coda>/shared/jsp/rpcFooter.jsp</include-coda>
            </jsp-property-group>
        </jsp-config>
    
        <mime-mapping>
            <extension>manifest</extension>
            <mime-type>text/cache-manifest</mime-type>
        </mime-mapping>
    
    </web-app>
    7) Directory moce/WEB-INF/lib. Same as in runtime lib distrib, except that the postgresql driver has been added (postgresql-9.1-901.jdbc4.jar)
    8) File moce/WEB-INF/classes/log4j.isc.config.xml. Same as in runtime distrib
    9) File moce/WEB-INF/classes/server.properties
    Code:
    # The webRoot directory:
    # the directory that the servlet engine regards as the place where applications
    # that use the servlet engine should be installed.  Generally, it is safe to leave
    # this at the default setting of __AUTODETECT__.  When the SmartClient server is
    # started, it logs a message to stdout telling you the autodetected path to your
    # webRoot.  If this path is not your actual webRoot, then you'll want to override
    # this config parameter here.
    #
    # Valid values:
    #
    # 1. Absolute path to the webRoot directory
    #
    # 2. Special token:  __AUTODETECT__
    #    When this token is used, SmartClient attempts to auto-detect the webRoot using
    #    standard servlet APIs.  This may or may not work - depending on your
    #    container type and deployment type.  For example, WAR/EAR deployments
    #    on some containers never make it to disk, and so the container refuses
    #    to provide the webRoot path.
    #
    #    If SmartClient cannnot detect the webRoot, it sets the webRoot to
    #    __USE_CONTAINER__ (see below).
    #
    # 3.  Special token: __USE_CONTAINER__
    #     When this token is used, SmartClient uses standard servet APIs for accessing
    #     filesystem resources.  This is slower than direct file access and, since
    #     the servlet APIs provide no mechanism for writing to disk, means that some
    #     development tools like the FileAssembler will not work.
    #
    webRoot: __AUTODETECT__
    
    # if you've moved the isomorphic directory from its default location in webRoot,
    # set the root-relative path to it here
    #
    # For example, if in your deployment the 'isomorphic' dir is in /foo/bar, then set
    # then you'll need to set this to foo/bar/isomorphic
    isomorphicPathRootRelative: isomorphic
    
    # -------------- PICK DATABASE TO USE --------------------
    sql.defaultDatabase: PostgreSQL
    
    # -------------- SETTINGS FOR PostgreSQL --------------------
    sql.PostgreSQL.driver.serverName: localhost
    sql.PostgreSQL.driver.portNumber: 5432
    sql.PostgreSQL.driver.databaseName: its_client_pg
    sql.PostgreSQL.driver.user: its_client_user
    sql.PostgreSQL.driver.password: ********
    
    # -------------- LOADING APP AND DATASOURCE DEFINITIONS --------------------
    
    # Where the system looks for DataSource definition files ([dataSourceId].ds.xml or
    # [dataSourceID].ds.js).  It's useful to put all your DataSources in one
    # directory since DataSources are frequently shared between applications.
    # "project.datasources" is also where the DataSource Importer tool looks
    # for available DataSources.
    project.datasources: $webRoot/ds, $webRoot/shared/ds, $webRoot/examples/shared/ds, $webRoot/moce/ds
    project.ui: $webRoot/shared/ui
    project.apps: $webRoot/shared/app
    
    
    # -------------- Other settings --------------------
    # The setting RPCManager.enabledBuiltinMethods enables or disables the BuiltInRPCs - RPC calls
    # that are built into the SmartClient Server.  The setting below reflects the framework default
    # of enabling only those RPCs that are typically needed in an application.
    #
    # See the JavaDoc for com.isomorphic.rpc.BuiltinRPC and com.isomorphic.tools.BuiltinRPC for all
    # available builtinRPCs and their behavior.
    #
    # Note that many of the BuiltinRPCs are designed for use by tools such as Visual Builder, and
    # provide services such as direct access to the file system (for load and save of screens) that
    # would be unsafe to expose to untrusted users.
    #
    #RPCManager.enabledBuiltinMethods: getPdfObject, getPdfObject, xmlToJS, uploadProgressCheck, exportClientData, downloadClientExport

    Leave a comment:


  • Isomorphic
    replied
    Use is not restricted to Embedded Tomcat.

    All of your issues below seem to indicate skipped steps in installation, specifically, the servlets in web.xml have not been added.

    Leave a comment:


  • Deploying Smartclient in apache-tomcat 7 : Transport error

    Deploying Smartclient in apache-tomcat 7 (SmartClient Version: v8.2p_2012-08-14/EVAL Deployment (expires 2012.10.13_05.10.35) Licensed to: Isomorphic Software (#ISC_EVAL_NIGHTLY) I got several errors
    related to the server side.
    First of all, is the SmartClient evaluation software restricted to the embedded tomcat usage or can be deployed within the espiration date ?

    A simple test application (given below) getting data from a postgresql database works in the embedded env. but as soon as it is deployed as described in your reference I am running into the following errors:

    * Error Message: Object doesn't support this property or method URL: http://172.20.0.21:90/isomorphic/system/modules/ISC_Core.js
    This error is related to the call
    <script SRC=../isomorphic/DataSourceLoader?dataSource=its_ds_contact></script>

    Replacing the dynamic DataSource Loader call with the object definition here follow and calling directly the object I got
    <script src="ds/ds.js"></script>

    File ds/index.html
    Code:
    <HTML>
    <head>
    
    title>::itsProject v0.1test::</title>
    
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <meta http-equiv="Cache-Control" content="no-cache no-store must-revalidate" >
    <meta http-equiv="Pragma" content="no-cache" >
    <meta name="author" content="itaca consulting sagl">
    <meta name="keywords" content="itaca itsProject">
    <meta name="description" content="evaluation project">
    <link rel="shortcut icon" href="./imgs/favicon.ico" />
    
    <script>window.isc_useSimpleNames = false; </script>
    
    <script>var isomorphicDir = "../isomorphic/"</script>
    <script src=../isomorphic/system/modules/ISC_Core.js></script>
    <script src=../isomorphic/system/modules/ISC_Foundation.js></script>
    <script src=../isomorphic/system/modules/ISC_Containers.js></script>
    <script src=../isomorphic/system/modules/ISC_Grids.js></script>
    <script src=../isomorphic/system/modules/ISC_Forms.js></script>
    <script src=../isomorphic/system/modules/ISC_DataBinding.js></script>
    <script src=../isomorphic/skins/Enterprise/load_skin.js></script>
    
    <link rel="stylesheet" type="text/css" href="css/ITS.css" />
    
    </head>
    <body dir="LTR">
    
    <script type="text/javascript">
      //  window.isc.showConsole();                       //debug
      if(window.isc){
        isc.setAutoDraw(false);
        isc.screenReader=false;
      }
    </script>
    
    <!--  Get the direct object creation or DataSourceLoader
      <script src="ds/ds.js"></script>
      <script SRC=../isomorphic/DataSourceLoader?dataSource=its_ds_contact></script>
    -->
    
      <script src="ds/ds.js"></script>
      <script src="app.js"></script>
    
    </BODY>
    </HTML>

    File app.js
    Code:
    isc.ClassFactory.defineClass('ITSListGrid','VLayout');
    isc.ITSListGrid.addProperties({
        width:"100%", height:"100%", layoutMargin:0,
        initWidget : function () {
            this.Super("initWidget", arguments);
    
                    this.ITSListGridFooter = isc.Label.create({
                    layoutLeftMargin:5,
                            height:22
                });
    
                    this.ITSListGridList = isc.ListGrid.create({
                            ITSListGridFooter:this.ITSListGridFooter,
                            dataSource:this.dataSource,
                            canEdit:false,
                    modalEditing:false, autoFetchData:false, autoDraw:false,
                            alternateRecordStyles:true, canDragRecordsOut:true,
                            hoverWidth:200, hoverHeight:20,layoutMargin:0,
                            selectionType:"single",
                            showFilterEditor: true, filterOnKeypress: true,
                            cellChanged:"this.updateDetails();",
                            recordClick:"this.updateDetails();",
                    dataChanged : function () {
                            this.Super("dataChanged", arguments);
    
                                totalRows = this.data.getLength();
                                if (totalRows > 0 && this.data.lengthIsKnown()) {
                                    if (totalRows==1)
                                            footertxt = totalRows +" element selected.";
                                        else
                                            footertxt = totalRows +" elements selected.";
                            } else {
                                        footertxt = totalRows +" elements selected.";
                           }
                           this.ITSListGridFooter.setContents(footertxt);
                            },
    
                        updateDetails : function () {
    
                            var record = this.getSelectedRecord();
                                    if (record == null)
                                            return;
                        }
                    });
                    this.addMembers([this.ITSListGridList,this.ITSListGridFooter]);
            }
    });
    
    myTop = isc.ITSListGrid.create({dataSource:"its_ds_contact"});
    myTop.ITSListGridList.fetchData(null,null,{operationId:""});
    myTop.draw();

    File ds/ds.js
    Code:
    isc.DataSource.create({
        schema:"crm",
        dbName:"PostgreSQL",
        tableName:"its_ds_contact",
        ID:"its_ds_contact",
        dataSourceVersion:1,
        fields:[
            {
                hidden:true,
                name:"id_contact",
                primaryKey:true,
                type:"integer"
            },
            {
                detail:true,
                name:"is_company",
                sqlStorageStrategy:"integer",
                title:"is_company",
                type:"boolean"
            },
            {
                detail:true,
                length:255,
                name:"vocative",
                title:"vocative",
                type:"text"
            },
            {
                length:255,
                name:"first_name",
                title:"first_name",
                type:"text"
            },
            {
                detail:true,
                length:255,
                name:"middle_name",
                title:"middle_name",
                type:"text"
            },
            {
                length:255,
                name:"last_name",
                required:true,
                title:"last_name",
                type:"text"
            },
            {
                length:255,
                name:"co_address",
                title:"co_address",
                type:"text"
            },
            {
                length:255,
                name:"address",
                title:"address",
                type:"text"
            },
            {
                length:255,
                name:"zipcode",
                title:"zipcode",
                type:"text"
            },
            {
                length:255,
                name:"city",
                title:"city",
                type:"text"
            },
            {
                length:255,
                name:"region",
                title:"region",
                type:"text"
            },
            {
                length:255,
                name:"country",
                title:"country",
                type:"text"
            },
            {
                hidden:true,
                name:"id_main_contact_email",
                type:"integer"
            },
            {
                hidden:true,
                name:"id_main_contact_phone",
                type:"integer"
            },
            {
                hidden:true,
                name:"id_main_contact_address",
                type:"integer"
            }
        ],
        serverType:"sql"
    })

    * Transport error - HTTP code: 404 for URL: http://172.20.0.21:90/isomorphic/IDACall
    There is no further information in the RPC Developper Console.

    In the browser debugger I have go a call to
    http://www.isomorphic.com/versionCheck/blank.gif?version=v8.2p_2012-08-14/EVAL Deployment&date=2012-08-14&licence=ISC_EVAL_NIGHTLY
    without any responses...


    Other config files:
    -------------------
    The file web.xml is untouched as remaing the same of in Runtime Distrib.
    The file server.properties get the following PostgreSQL setting.
    Code:
     sql.defaultDatabase: PostgreSQL
    
    # -------------- SETTINGS FOR PostgreSQL --------------------
    
    # These are the settings for use with the PostgreSQL database.
    
    # hostname and port where the database server is installed
    sql.PostgreSQL.driver.serverName: localhost
    sql.PostgreSQL.driver.portNumber: 5432
    
    # name of the database to use
    sql.PostgreSQL.driver.databaseName: myDatabase
    
    # username and password that can create and modify tables in that database
    # this user must have the following privileges for the system to function
    # properly: create/alter/drop table; create/drop sequences; 
    # insert/update/replace/delete rows.
    sql.PostgreSQL.driver.user: MyUser
    sql.PostgreSQL.driver.password: MyPassword

    Finally, is this a configuration issue or a licensing problem ?
    Regards,
    Itaca

    Note: please fix in your smartclient distrib the file server.properties (SDK directory) in the section -- SETTINGS FOR DB2 -- that have sql.PostgreSQL instead of sql.DB2 impacting the PostgreSQL setup.
Working...
X