Try using Maven 2.0.9 to build. You're pulling in multiple Spring versions.

Also, set write permissions on that cas log or directory for the Tomact
user.
-Scott Battaglia
PGP Public Key Id: 0x383733AA
LinkedIn: http://www.linkedin.com/in/scottbattaglia


On Thu, Oct 9, 2008 at 10:20 AM, Matthew Jones <
[EMAIL PROTECTED]> wrote:

> Hi Thai,
>
> I have skipped the Eclipse part and am trying just to build from the
> command line. I have edited the pom.xml and deployerContextConfig.xml files
> appropriately for the CAS I wish to deploy (that I have running having
> patched the deployed .war file that I downloaded). I am using OpenLDAP I'm
> using the "ordinary" LDAP binder rather than the fast one.
>
> After running mvn package in the appropriate directory I get a cas.war file
> in the target sub-directory and I then try to deploy that. When this is
> deployed, it does indeed appear to have added the Spring LDAP .jar files
> that I previously added manually but the .war file doesn't deploy
> successfully.
>
> Anyway, the "highlights" of catalina.out are as follows and I really don't
> understand the one about cas.log. It is there and is owned by Tomcat. This
> is the same Tomcat instance that I have the downloaded war file deployed on
> and edited. Indeed, I can still start this CAS server and it still appears
> to function correctly (it is under /cas-server-webapp-3.3 in the Tomcat
> manager rather than my built one which is under /cas)
>
> log4j:ERROR setFile(null,true) call failed.
> java.io.FileNotFoundException: cas.log (Permission denied)
> log4j:ERROR setFile(null,true) call failed.
> java.io.FileNotFoundException: cas.log (Permission denied)
>
> 2008-10-06 17:35:00,692 ERROR
> [org.springframework.web.context.ContextLoader] - <Context initialization
> failed>
> java.lang.NoClassDefFoundError: org/springframework/core/SmartClassLoader
>    at java.lang.ClassLoader.defineClass1(Native Method)
>    at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
>    at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
> 2008-10-06 17:35:00,701 FATAL
> [org.jasig.cas.web.init.SafeContextLoaderListener] -
> <SafeContextLoaderListener:
> The Spring ContextLoaderListener we wrap threw on contextInitialized.
> But for our having caught this error, the web application context would not
> have initialized.>
> java.lang.NoClassDefFoundError: org/springframework/core/SmartClassLoader
>
> SafeContextLoaderListener:
> The Spring ContextLoaderListener we wrap threw on contextInitialized.
> But for our having caught this error, the web application context would not
> have initialized.
> java.lang.NoClassDefFoundError: org/springframework/core/SmartClassLoader
>
> 2008-10-06 17:35:00,709 ERROR
> [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/cas]] -
> <SafeContextLoaderListener:
> The Spring ContextLoaderListener we wrap threw on contextInitialized.
> But for our having caught this error, the web application context would not
> have initialized.>
> java.lang.NoClassDefFoundError: org/springframework/core/SmartClassLoader
>
> 2008-10-06 17:35:00,742 ERROR
> [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/cas]] -
> <Exception starting filter springSecurityFilterChain>
> java.lang.NoClassDefFoundError:
> org/springframework/beans/PropertyAccessorFactory
>    at
> org.springframework.web.filter.GenericFilterBean.init(GenericFilterBean.java:165)
> 2008-10-06 17:35:00,755 ERROR
> [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/cas]] -
> <Exception starting filter CAS Client Info Logging Filter>
> java.lang.NoClassDefFoundError:
> org/springframework/beans/PropertyAccessorFactory
>    at
> org.springframework.web.filter.GenericFilterBean.init(GenericFilterBean.java:165)
> Oct 6, 2008 5:35:00 PM org.apache.catalina.core.StandardContext start
> SEVERE: Error filterStart
> Oct 6, 2008 5:35:00 PM org.apache.catalina.core.StandardContext start
> SEVERE: Context [/cas] startup failed due to previous errors
> Oct 6, 2008 5:35:00 PM org.apache.catalina.startup.HostConfig deployWAR
> INFO: Deploying web application archive cas-server-webapp-3.3.war
> 2008-10-06 17:35:08,938 INFO
> [org.jasig.cas.web.flow.AuthenticationViaFormAction] - <FormObjectClass not
> set.  Using default class of
> org.jasig.cas.authentication.principal.UsernamePasswordCredentials with
> formObjectName credentials and validator
> org.jasig.cas.validation.UsernamePasswordCredentialsValidator.>
>
> All of which makes me think I have missed something fundemental in my
> configuration somewhere. I am trying to build the war file on Ubuntu 8.04
> AMD64 with the following:
> # mvn --version
> Maven version: 2.0.8
> Java version: 1.6.0_06
> OS name: "linux" version: "2.6.24-19-generic" arch: "amd64" Family: "unix"
>
> The last part of the output from the mvn package command run the
> cas-server-webapp is as follows:
>
> [INFO] BUILD SUCCESSFUL
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 14 seconds
> [INFO] Finished at: Thu Oct 09 15:13:22 BST 2008
> [INFO] Final Memory: 21M/52M
> [INFO]
> ------------------------------------------------------------------------
>
> which implies it worked. I have assumed that I don't actually need any of
> the Eclipse part for this to work.
>
>
>  Maven2 and CAS-3.3 are all you need.
>> Here is what I did:
>>
>> o I used Eclispe but after installing the Maven plug-in, eclipse
>> treats all my projects as Maven projects and if it could not find
>> pom.xml in a project, it complains about it. So I removed the plug-in
>> and use Eclispe as a editor. I know the purpose of the plug-in is to
>> eliminate the manual process as I will described below and more. But
>> for now I will not use it until I have more time to figure it out.
>> Hopefully, someone can have some input on this.
>>
>> o When you untar the CAS-3.3 you will find the directory
>> cas-server-webapp, use that directory to create a Java project in
>> Eclipse.
>> NOTE: If you have mvn in your PATH, you can go to the
>> cas-server-webapp and run the command: mvn package
>> First time you run, Maven will download some files (you need internet
>> connection)
>> It should success building and create cas-server-webapp/target/cas.war
>> file.
>> This should be the same as CAS-3.3/modules/cas-server-webapp-3.3.war
>> file that include in the download
>>
>> To modify CAS to support authenticate against LDAP:
>> All files mention below are relative to the cas-server-webapp directory
>> o Modify pom.xml file and add:
>> ----------------------------------------------
>> <dependency>
>>                        <groupId>org.jasig.cas</groupId>
>>                        <artifactId>cas-server-support-ldap</artifactId>
>>                        <version>${project.version}</version>
>> </dependency>
>> ---------------------------------------------
>> in between the <dependencies>
>>
>> o Modify src/main/webapp/WEB-INF/deployerConfigContext.xml and replace:
>>
>>  
>> org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler
>> with
>>  org.jasig.cas.adaptors.ldap.FastBindLdapAuthenticationHandler
>>
>> and add:
>> ------------------------------------------------
>> <bean id="contextSource"
>> class="org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource">
>>                <property name="pool" value="true" />
>>                <property name="urls">
>>                        <list>
>>                                <value>ldap://your-ldap-server:389</value>
>>                        </list>
>>                </property>
>>                <property name="baseEnvironmentProperties">
>>                        <map>
>>                                <entry>
>>                                        <key>
>>
>>  <value>java.naming.security.authentication</value>
>>                                        </key>
>>
>>  <value>simple</value></entry></map></property>
>>                <property name="userName">
>>
>>  <value>your-cn-of-the-access-or-anonymous</value></property>
>>                <property name="password">
>>                        <value>depend-on-anonymous-access</value>
>>                </property>
>>        </bean>
>> ----------------------------------------------------------
>> in between the <beans>
>>
>> o Now if you go back the prompt and run: mvn package again, maven will
>> download the spring ldap jar files for you and include in the newly
>> build cas.war
>>
>> Hope that help! (please update if you found any trouble)
>>
>> Thai Nguyen
>>
>> On Tue, Oct 7, 2008 at 4:29 AM, Matthew Jones
>> <[EMAIL PROTECTED]> wrote:
>>
>>> Up until now all I have been doing is deploying CAS from the downloaded
>>> .war
>>> file and adding the Spring LDAP jars manually. I now want to move to
>>> being
>>> able to build a custom .war file that contains the required LDAP jars and
>>> then move on to writing a custom authentication handler for our combined
>>> X509 certificates and username /pasword.
>>>
>>> I have installed maven2 and already have the CAS 3.3 download as that's
>>> what
>>> I have deployed to our test system. Is that sufficient for what I want to
>>> do? Is there any basic guide for novices starting along this line?
>>>
>>> I do have eclipse installed although I haven't used it for anything
>>> related
>>> to CAS although I have seen using Eclipse mentioned. Is this the
>>> recommended
>>> approach? I'm after the simplest approach to set this up so I'm happy to
>>> follow any reasonable approach especially as this isn't in my normal
>>> working
>>> set currently.
>>>
>>> All help and advice gratefully received.
>>>
>>> Thanks
>>>
>>
> --
> Matthew Jones
> Interactive Data Managed Solutions Ltd
> -----------------------------------------------------------------------
> Registered in England Company Number 3691868
> Registered Office: Fitzroy House, 13-17 Epworth Street, London, EC2A 4DL
> Tel: +44 (0)1242 694133 | Fax: +44 (0)1242 694109
> [EMAIL PROTECTED]
> http://www.interactivedata-ms.com/694133
>
> This message (including any files transmitted with it) may contain
> confidential and/or proprietary information, is the property of Interactive
> Data Corporation and/or its subsidiaries, and is directed only to the
> addressee(s). If you are not the designated recipient or have reason to
> believe you received this message in error, please delete this message from
> your system and notify the sender immediately. An unintended recipient's
> disclosure, copying, distribution, or use of this message or any attachments
> is prohibited and may be unlawful.
> Interactive Data (Europe) Ltd Registered No. 949387 England Registered
> Office: Fitzroy House 13-17 Epworth Street. London. EC2A 4DL
>
>
> _______________________________________________
> Yale CAS mailing list
> [email protected]
> http://tp.its.yale.edu/mailman/listinfo/cas
>
>
_______________________________________________
Yale CAS mailing list
[email protected]
http://tp.its.yale.edu/mailman/listinfo/cas

Reply via email to