On my site we are using MS SQL Server as the backend of James 2.3.1, before 
forced to use Windows Integrated Authentication we use SQL Logins to let James 
login into SQL Server, the configure section is as follows:

 

<data-source name="maildb" class="org.apache.james.util.dbcp.JdbcDataSource">

                      
<driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>                
<dburl>jdbc:sqlserver://localhost;databaseName=James; </dburl>

         <user>test</user>

<password>test</password>

          <max>20</max>

 </data-source>

 

When using Windows Integrated Authentication we change the configure as follows:

<data-source name="maildb" class="org.apache.james.util.dbcp.JdbcDataSource">

                      
<driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver>                
<dburl>jdbc:sqlserver://localhost;databaseName=James;integratedSecurity=true</dburl>

<max>20</max>

 </data-source>

 

We also change the source code of JdbcDataSource.java to allow not setting 
<user> and <passowrd> elements as follows:

 

    public void configure(final Configuration configuration)

                   throws ConfigurationException {

        //Configure the DBCP

        try {

            String driver = configuration.getChild("driver").getValue(null);

            Class.forName(driver);

 

            String dburl = configuration.getChild("dburl").getValue(null);

            String user = null;

            String password = null;

            try{

                user = configuration.getChild("user").getValue(null);

                password = configuration.getChild("password").getValue(null);

            }catch(Exception ex){

                user = null;

                password = null;

            }

           ……..

            source.setDriverClassName(driver);

            source.setUrl(dburl);

            if (user != null && password != null){

                source.setUsername(user);

                source.setPassword(password);

            }

 

James failed to start using the latter configure and the new code, the error 
message is:

 

STATUS | wrapper  | 2007/11/26 16:50:13 | --> Wrapper Started as Service

STATUS | wrapper  | 2007/11/26 16:50:13 | Launching a JVM...

INFO   | jvm 1    | 2007/11/26 16:50:13 | Wrapper (Version 3.2.0) 
http://wrapper.tanukisoftware.org

INFO   | jvm 1    | 2007/11/26 16:50:13 | 

INFO   | jvm 1    | 2007/11/26 16:50:13 | 

INFO   | jvm 1    | 2007/11/26 16:50:13 | Phoenix 4.2

INFO   | jvm 1    | 2007/11/26 16:50:13 | 

INFO   | jvm 1    | 2007/11/26 16:50:15 | Nov 26, 2007 4:50:15 PM 
com.microsoft.sqlserver.jdbc.AuthenticationJNI <clinit>

INFO   | jvm 1    | 2007/11/26 16:50:15 | 警告: Failed to load the 
sqljdbc_auth.dll

INFO   | jvm 1    | 2007/11/26 16:50:15 | 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleException: Component 
named "database-connections" failed to pass through the Starting stage. 
(Reason: org.apache.avalon.framework.configuration.ConfigurationException: 
Error configurable datasource).

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.fail(LifecycleHelper.java:354)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.startup(LifecycleHelper.java:226)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.application.DefaultApplication.startup(DefaultApplication.java:530)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.application.DefaultApplication.doRunPhase(DefaultApplication.java:478)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.application.DefaultApplication.runPhase(DefaultApplication.java:409)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.application.DefaultApplication.start(DefaultApplication.java:180)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.framework.container.ContainerUtil.start(ContainerUtil.java:260)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.startup(DefaultKernel.java:295)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.kernel.DefaultKernel.addApplication(DefaultKernel.java:376)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(DefaultDeployer.java:357)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:542)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(DefaultEmbeddor.java:535)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(DefaultEmbeddor.java:520)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultApplications(DefaultEmbeddor.java:509)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(DefaultEmbeddor.java:268)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:198)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
java.lang.Thread.run(Thread.java:534)

INFO   | jvm 1    | 2007/11/26 16:50:15 | Caused by: 
org.apache.avalon.framework.configuration.ConfigurationException: Error 
configurable datasource

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.james.util.dbcp.JdbcDataSource.configure(JdbcDataSource.java:209)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.cornerstone.blocks.datasources.DefaultDataSourceSelector.initialize(DefaultDataSourceSelector.java:147)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:244)

INFO   | jvm 1    | 2007/11/26 16:50:15 |      at 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.startup(LifecycleHelper.java:200)

 

Reply via email to