jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Auinger <thomas.auin...@byteconsult.de>
Subject AW: Spring jcr version to use with Jack Rabbit 2.6.3
Date Fri, 30 Aug 2013 07:20:44 GMT
Hi Alex,

I understand your reasoning for not using the Spring module, however, a typical Spring application
is built around a single "Dispatcher" servlet, which makes session management in various servlets
not a standard "Spring way".

Of course it is still possible to use servlet-filters or sprint interceptors, which can be
configured like e.g.
http://stackoverflow.com/questions/9908124/spring-mvc-3-interceptor-on-all-excluding-some-defined-paths

Viele Grüße
Thomas Auinger
Beratung und Leitung Entwicklung

ByteConsult GmbH  |  Tel.: +49-(0)931-20510-20  |  AG Würzburg, HRB 7262
Schürerstraße 5   |  Fax:  +49-(0)931-20510-19  |  GF: Jens Helmerich
97080 Würzburg    |  http://www.byteconsult.de  |      Manuel Hermann


-----Ursprüngliche Nachricht-----
Von: Alexander Klimetschek [mailto:aklimets@adobe.com] 
Gesendet: Freitag, 30. August 2013 03:47
An: dev@jackrabbit.apache.org
Cc: users@jackrabbit.apache.org
Betreff: Re: Spring jcr version to use with Jack Rabbit 2.6.3

The spring jcr module is not developed by the Apache Jackrabbit. AFAIU it is inactive for
a number of years already.

But you don't need it to use JCR withing Spring applications. What it does is IMHO a bad approach
with JCR anyway - it sees JCR as just another DAO/OCR framework and uses template callbacks
etc. to make it completely transparent to the user how the JCR session underneath is managed.
This is a bad thing, it is important to control the session (login, lifecycle usually per
request, and exact save() or refresh() points) yourself.

A usueful approach is:
- to have maybe a servlet filter etc. auto-create the session at the start of the request
and use whatever authentication you have over HTTP coming in to login the right user for the
session and
- provide that to your servlets in e.g. a request attribute.
- session.save() would be up to servlets that actually change something (e.g. POST or PUT
requests)
- background services outside a request would create their own session with e.g. a service
user

You don't need the spring jcr module for this. Also, you might want to look at Apache Sling,
which follows the above pattern.

Cheers,
Alex

On 29.08.2013, at 02:35, sumit tiwari <tiwarisumit3@gmail.com> wrote:

> Hi All,
> 
> I am planning to use jack rabbit with spring. I am seeing that spring jcr version 0.8
and 0.9 looks for old jsr170 jar and fails out.
> 
> 
> [ERROR] Failed to execute goal on project xyz: Could not resolve dependencies for project
com.test.xyq:war:2.4.2: The following artifacts could not be resolved: jsr170:jsr170:jar:1.0,
jeceira:jeceira:jar:0.1.3, aparzev:doka:jar:0.1, aparzev:commons:jar:0.2, jug:jug-asl:jar:2.0.0:
Failure to find jsr170:jsr170:jar:1.0 in http:///nexus/content/groups/cliqrthirdparty was
cached in the local repository, resolution will not be reattempted until the update interval
of  has elapsed http:///nexus/content/groups/cliqrthirdparty or updates are forced -> [Help
1]
> 
> I did the exclusion 
> 
> <dependency>
> 			<groupId>org.springmodules</groupId>
> 			<artifactId>spring-modules-jcr</artifactId>
> 			<version>0.8</version>
> 			<optional>true</optional>
> 			<exclusions>
> 				<exclusion>
> 					<artifactId>jackrabbit-core</artifactId>
> 					<groupId>org.apache.jackrabbit</groupId>
> 				</exclusion>
> 				<exclusion>
> 					<artifactId>jackrabbit-jca</artifactId>
> 					<groupId>org.apache.jackrabbit</groupId>
> 				</exclusion>
> 		</exclusions>
> 	  </dependency>	
> 
> I am using it in application-context.xml
> 
> <bean id="repository"
>         class="org.springmodules.jcr.jackrabbit.RepositoryFactoryBean">
>         <!-- normal factory beans params -->
>         <property name="configuration" value="classpath:/jackrabbit-repository.xml"
/>
>         <!-- use the target folder which will be cleaned  -->
>         <property name="homeDir" value="file:./tmp/repository" />
>     </bean>
> 
> Is there any recent spring document which I can refer. I am not keen on using spring
jcr but a good approach in which I can integrate the latest version of jack rabbit with spring.
>  
> 
> -- 
> Thanks,
> Sumit 
> 



Mime
View raw message