I installed Tomcat 8.5, Microsoft SQL Server 2017, Java SDK 9.0.4 and that
latest Maven.

I used the GUI installer. The installation completes successfully, but the
syncore core webapp won't start.

I tried following suggestions from here:
https://cwiki.apache.org/confluence/display/SYNCOPE/Run+Syncope+in+real+environments

I added the following to the persistence.properties file:

/jpa.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
jpa.url=jdbc:sqlserver://localhost:1344;database=Syncope;selectMethod=cursor;sendStringParametersAsUnicode=false
jpa.username=syncope
jpa.password=Chick3n82
jpa.dialect=org.apache.openjpa.jdbc.sql.SQLServerDictionary
jpa.pool.validationQuery=SELECT 1
#note: other connection pool settings can also be configured here, see
persistenceContext.xml
quartz.jobstore=org.quartz.impl.jdbcjobstore.MSSQLDelegate
quartz.sql=tables_sqlServer.sql
audit.sql=audit_sqlserver.sql
database.schema=/

I renamed spring-orm-sqlserver.xml to orm.xml in the META-INF folder.

I created a batch file in 'C:\Program Files\Apache Software
Foundation\Tomcat 8.5\bin' named setenv.bat with: 
/set JAVA_OPTS=-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server
-Xms1536m -Xmx1536m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m
-XX:MaxPermSize=256m -XX:+DisableExplicitGC/

(I know the page says for Tomcat 7, but Tomcat 8.5 wasn't working, so I
thought I'd try it)

In context.xml, I uncommented ' /<Manager pathname="" />/ ' and added the
following underneath:

/    <Resource name=&quot;jdbc/syncopeMainDataSource&quot;
auth=&quot;Container&quot; type=&quot;javax.sql.DataSource&quot;
        factory=&quot;org.apache.tomcat.jdbc.pool.DataSourceFactory&quot;
testWhileIdle=&quot;true&quot;
        testOnBorrow=&quot;true&quot; testOnReturn=&quot;true&quot;
validationQuery=&quot;SELECT 1&quot; validationInterval=&quot;30000&quot;
        maxActive=&quot;100&quot; minIdle=&quot;2&quot;
maxWait=&quot;10000&quot; initialSize=&quot;2&quot;
removeAbandonedTimeout=&quot;20000&quot;
        removeAbandoned=&quot;true&quot; logAbandoned=&quot;true&quot;
suspectTimeout=&quot;20000&quot;
        timeBetweenEvictionRunsMillis=&quot;5000&quot;
minEvictableIdleTimeMillis=&quot;5000&quot;
       
jdbcInterceptors=&quot;org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer&quot;
        username=&quot;syncope&quot; password=&quot;&lt;password>"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
       
url="jdbc:sqlserver://localhost:1344;database=syncope;selectMethod=cursor;sendStringParametersAsUnicode=false"
    />/

The example on the website has the name as jdbc/syncopeDataSource, but the
GUI installer had a note about this and called it syncopeMainDataSource. I
tried both ways, but neither work.

I uncommented the following in the glassfish-web.xml file:
  <resource-ref>
    <res-ref-name>jdbc/syncopeMasterDataSource</res-ref-name>
    <jndi-name>jdbc/syncopeMasterDataSource</jndi-name>
  </resource-ref>

I also tried changing it to syncopeDataSource, but that didn't help either.

The document says to change a <resource-ref> tag in web.xml under core, but
there are no xml files with entries like that in it except for the
glassfish-web.xml, so I ignored this the instruction to change:
/<resource-ref>
  <res-ref-name>jdbc/syncopeDataSource</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
</resource-ref>/

to 
/<resource-ref>
  <res-ref-name>jdbc/syncopeDataSource</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
  <lookup-name>java:/syncopeDataSource</lookup-name>
</resource-ref>/

The site talks about adding a JBoss MySQL module, so I assume I must need to
do that with the MS SQL, but don't know how. I download the jar file from
microsoft and put it in the Tomcat\lib folder though...

Since this is what my C:\Program Files\Apache Software Foundation\Tomcat
8.5\webapps\syncope\WEB-INF\classes directory looks like:
<http://syncope-user.1051894.n5.nabble.com/file/t339063/conf-list.png> 

I made the following changes to the web.xml file in C:\Program Files\Apache
Software Foundation\Tomcat 8.5\webapps\syncope\WEB-INF

/<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
      classpath*:/*Context.xml
      classpath*:/indexes.xml
      classpath*:/log4j2.xml
      classpath*:/security.xml
      classpath*:/persistence-enhance.xml
      classpath*:/views.xml
    </param-value>
  </context-param>/

There is no weblogic.xml file anywhere in the syncore webapp directory, so I
ignored what to do there.

I am really fumbling here as I have never worked with Tomcat before. I am
totally clueless as to what is going on or what I need to to to make this
work.



--
Sent from: http://syncope-user.1051894.n5.nabble.com/

Reply via email to