Page 1 of 2 12 LastLast
Results 1 to 10 of 14

Thread: Spring CMS Integration

  1. #1

    Default Spring CMS Integration

    I have the need to tie in a content management system into my Spring/Hibernate/Acegi application and am curious to know what open source CMS packages integrate well with Spring. My application will provide auto-generated content as well as give the user the ability to manage content they push to the CMS. I would like the CMS to fully integrate with my application and will need to manipulate the CMS 'skin' so I can incorporate my own navigation and event items.

    I looked at JNuke but it appears to be a bit unstable. I have looked at Alfresco but it appears to be too full featured and perhaps difficult to integrate. I have also started to consider moving my application from Tomcat to JBoss for the JBoss portal functionality. Finally, I have also started looking at the Spring Modules Jackrabbit integration as a possible CMS solution.

    What have folks done with respect to CMS solutions that integrate well with Spring? Ideally, I would not like to roll my own CMS solution and rather would want to integrate my Spring app with a well proven CMS solution.

    Thoughts, comments.

    Thank you in advance for your assistance.
    -Derrick

  2. #2

    Default

    I can recommend AtLeap.
    I have used it for very big project and was really happy.
    It is based on appfuse, so, it has Spring, Hibernate, Acegi and all those nice stuff incorporated.

    Regards
    Milan

  3. #3

    Default

    Thank you for the suggestion. I was looking at Alfresco as a possibility and it appears their SDK is a real possibility.

    Blandware AtLeap is nice solution.

  4. #4

    Default

    upon closer inspection ... AtLeap isn't going to cut it.

    Any other cool ideas???

  5. #5
    Join Date
    Jan 2005
    Location
    Bucharest, Romania
    Posts
    5,403

    Default

    I would suggest Alfresco - I haven't work it closely but overall their documentation and product seems to be solid. Also, it's totally opened and uses Spring internally so integration is really no issue.
    They provide a JSR-170 connector along with a native API and IIRC, you also have other means to talk with it.
    It works on literally any database supported by Hibernate and their documentation is satisfactory at least plus they have a friendly license.
    Give the SDK a try and see how it goes.
    Costin Leau
    SpringSource - http://www.SpringSource.com- Spring Training, Consulting, and Support - "From the Source"
    http://twitter.com/costinl
    Please use [ c o d e ] [ / c o d e ] tags

  6. #6

    Default

    I looked at Alfresco is some detail and spoke to a sales rep to establish what an OEM license would look like (I want to integrate it as a unit into our application and since they have a GPL I need OEM to get around this). The cost of the OEM was about 20k USD/yr!

    I have since decided to implement the JCR using the Spring Modules and put my content into my own repository.

    Now, I have to sort out how to get the Spring Modules JCR to be properly wired with Jackrabbit.

    If anyone has wired up the JCR with Jackrabbit, I would be curious to know your experience.. tips/tricks/etc....

    Thanks.

  7. #7
    Join Date
    Jan 2005
    Location
    Bucharest, Romania
    Posts
    5,403

    Default

    The cost of the OEM was about 20k USD/yr!
    Ouch...

    Now, I have to sort out how to get the Spring Modules JCR to be properly wired with Jackrabbit.
    Have you looked at https://springmodules.dev.java.net/d...html/jcr.html? You also have a sample inside the distribution with local and global transactions on top of JR.
    Moreover, you might want to take a look at this article: http://www.infoq.com/articles/spring-modules-jcr
    Costin Leau
    SpringSource - http://www.SpringSource.com- Spring Training, Consulting, and Support - "From the Source"
    http://twitter.com/costinl
    Please use [ c o d e ] [ / c o d e ] tags

  8. #8

    Default

    Thanks Costin! I will check those references.

  9. #9

    Default

    OK, I have the JCR wirings in place and while trying to start the web application in Tomcat 5.5 I am getting the following exception:

    java.lang.NoClassDefFoundError: org/apache/jackrabbit/BaseException


    In my WEB-INF/lib dir I have the resources:
    jackrabbit-core-1.2.2.jar and spring-modules-jcr.jar (from the Spring Modules 0.8 download.

    I have the a jcr-spring.xml file with the wirings:
    <bean id="jcrSessionFactory" class="org.springmodules.jcr.JcrSessionFactory">
    <property name="repository" ref="jcrRepository"/>
    <property name="credentials">
    <bean class="javax.jcr.SimpleCredentials">
    <constructor-arg index="0" value="bogus"/>
    <!-- create the credentials using a bean factory -->
    <constructor-arg index="1">
    <bean factory-bean="password" factory-method="toCharArray"/>
    </constructor-arg>
    </bean>
    </property>
    <property name="namespaces">
    <props>
    <prop key="maas">http://criticalmaas.tricision.com/jcr</prop>
    </props>
    </property>
    </bean>

    <!-- create the password to return it as a char[] -->
    <bean id="password" class="java.lang.String">
    <constructor-arg index="0" value="pass"/>
    </bean>

    <!-- transaction management on the JCR session -->
    <bean id="jcrTransactionManager" class="org.springmodules.jcr.jackrabbit.LocalTrans actionManager">
    <property name="sessionFactory" ref="jcrSessionFactory"/>
    </bean>

    <!-- transaction proxy for Jcr services/facades -->
    <bean id="txProxyTemplate" abstract="true" class="org.springframework.transaction.interceptor .TransactionProxyFactoryBean">
    <property name="proxyTargetClass" value="true"/>
    <property name="transactionManager" ref="jcrTransactionManager"/>
    <property name="transactionAttributes">
    <props>
    <prop key="save*">PROPAGATION_REQUIRED</prop>
    <prop key="*">PROPAGATION_REQUIRED, readOnly</prop>
    </props>
    </property>
    </bean>

    <!-- IOC template access to the JCR -->
    <bean id="jcrTemplate" class="org.springmodules.jcr.JcrTemplate">
    <property name="sessionFactory" ref="jcrSessionFactory"/>
    <property name="allowCreate" value="true"/>
    </bean>

    <!-- configuring the default repository -->
    <bean id="jcrRepository" class="org.springmodules.jcr.jackrabbit.Repository FactoryBean" destroy-method="shutdown">
    <!-- normal factory beans params -->
    <property name="configuration" value="classpath:jackrabbit-repo.xml"/>
    <property name="homeDir" value="/home/dkittler/workspace/MAAS_APP/web/repo"/>
    </bean>

    </beans>

    and the jackrabbit-repo.xml file ...
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <Repository>
    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFi leSystem">
    <param name="path" value="${rep.home}/repository"/>
    </FileSystem>
    <Security appName="Jackrabbit">
    <AccessManager class="org.apache.jackrabbit.core.security.SimpleA ccessManager"/>
    <LoginModule class="org.apache.jackrabbit.core.security.SimpleL oginModule"/>
    </Security>

    <Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="default" />
    <Workspace name="${wsp.name}">
    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFi leSystem">
    <param name="path" value="${wsp.home}"/>
    </FileSystem>
    <PersistenceManager class="org.apache.jackrabbit.core.state.xml.XMLPer sistenceManager" />
    <!--
    <SearchIndex class="org.apache.jackrabbit.core.query.lucene.Sea rchIndex">
    <param name="path" value="${wsp.home}/index"/>
    </SearchIndex>
    -->
    </Workspace>
    <Versioning rootPath="${rep.home}/versions">
    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFi leSystem">
    <param name="path" value="${rep.home}/versions"/>
    </FileSystem>
    <PersistenceManager class="org.apache.jackrabbit.core.state.xml.XMLPer sistenceManager" />
    </Versioning>

    </Repository>

    When I look in the Jackrabbit JAR files for the BaseException class I cannot find it. It is not in the 'core' JAR and I cannot find it in the other Jackrabbit JAR files. This exception is getting thrown when trying to create the repository.

    Thanks in advance for your help.
    -Derrick


    UPDATE .... BaseException is in jackrabbit-jcr-commons-1.2.2.jar
    Last edited by derrickhackman; Mar 14th, 2007 at 10:53 AM.

  10. #10
    Join Date
    Oct 2006
    Posts
    9

    Default

    I've been using JackRabbit + spring modules + spring + acegi. It all works together nicely.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •