A PAR is just an archive with a META-INF/persistence.xml file in it. The
JPA spec does cover this. The extension is irrelevant.
On Wed, Mar 9, 2016 at 4:08 PM Sanne Grinovero <sanne(a)hibernate.org> wrote:
I remember JBoss had "HAR" deployments to package Hibernate
models and
PU definitions.. as far as I know this was a JBoss only thing, it
wouldn't surprise me if other app servers experimented with similar
non-standardized archives.
https://docs.jboss.org/jbossas/jboss4guide/r3/html/ch13.html
On 9 March 2016 at 18:39, Vlad Mihalcea <mihalcea.vlad(a)gmail.com> wrote:
> Hi,
>
> The part is backslashes comes from the absolute path set by Gradle when
> supplying the module OS folder.
> The right part containing slashes is the one set in persistence.xml.
> I'll try to replace backslashes with slashes and see how it goes.
>
> I was curious if people use the jar-file with absolute paths because the
> JPA spec only implies it in the context of relative paths inside an EAR
or
> WAR.
> As for PAR, I guess that was included in some JPA 1.0 draft but it got
> rejected in the end, right?
>
> Vlad
>
>
>
>
> On Wed, Mar 9, 2016 at 6:39 PM, Emmanuel Bernard <emmanuel(a)hibernate.org
>
> wrote:
>
>> We usually strive on having functionalities work on both Java EE and
>> Java SE.
>> you example though shows a mix of forward and backslash in your
>> <jar-file>, is that expected ?
>>
>> Emmanuel
>>
>> On Wed 2016-03-09 17:05, Vlad Mihalcea wrote:
>> > Hi,
>> >
>> > I have two tests in the PackagedEntityManagerTest unit test that fail
on
>> my
>> > machine, but work just fine for everybody else.
>> > It could be an OS thing or not, but during the check, I found hat we
are
>> > testing against an use case that is not found in the JPA spec.
>> >
>> > The testExternalJar() creates an externaljar.jar and an
explicitpar.par.
>> >
>> > I found an old reference on the PAR archive (
>> >
http://radio-weblogs.com/0135826/2005/07/07.html) but the JPA 2.1
>> doesn't
>> > mention anything about it.
>> > The explicitpar.par contains the persistence.xml which contains a
>> jar-file
>> > attribute that references the externaljar.jar with an absolute path:
>> >
>> >
>>
<jar-file>D:\Vlad\Work\GitHub\hibernate-orm\hibernate-entitymanager\target/packages/externaljar.jar</jar-file>
>> >
>> > The JPA spec says that: "Such JAR files are specified relative to the
>> > directory or jar file that contains the root of the persistence
unit",
>> and
>> > gives several examples
>> > for when using an EAR with or without a WAR.
>> >
>> > While debugging, I found that the JarFileBasedArchiveDescriptor scans
the
>> > "explicitpar.par" and looks for:
>> >
>> > if ( getEntryBasePrefix() != null && ! entryName.startsWith(
>> > getEntryBasePrefix() ) ) {
>> > continue;
>> > }
>> >
>> > where the getEntryBasePrefix() is
>> >
>>
"D:/Vlad/Work/GitHub/hibernate-orm/hibernate-entitymanager/target/packages/externaljar.jar"
>> >
>> > The way that JarFileBasedArchiveDescriptor is implemented matches the
JPA
>> > description.
>> > Nevertheless, the scan cannot locate the jar, and the entities that
are
>> > contained in the "externaljar.jar" don't get loaded, and the
test
fails.
>> >
>> > I can ignore this on my machine and just consider it a white noise,
but I
>> > wonder why we still check for PAR when we might want to have a test
with
>> an
>> > EAR instead and relative paths.
>> >
>> > Vlad
>> > _______________________________________________
>> > hibernate-dev mailing list
>> > hibernate-dev(a)lists.jboss.org
>> >
https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
> _______________________________________________
> hibernate-dev mailing list
> hibernate-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/hibernate-dev
_______________________________________________
hibernate-dev mailing list
hibernate-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev