[jboss-jira] [JBoss JIRA] Resolved: (EJBTHREE-2131) timeout/ejb3-0 tests fails due to securityexception
jaikiran pai (JIRA)
jira-events at lists.jboss.org
Thu Jul 15 11:21:59 EDT 2010
[ https://jira.jboss.org/browse/EJBTHREE-2131?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
jaikiran pai resolved EJBTHREE-2131.
------------------------------------
Component Fix Version(s): timeout:0.1.3
Resolution: Done
Done. http://github.com/jbossejb3/jboss-ejb3-timeout/commit/b533541896a0c09a10343e498ea134b12b6c627a
> timeout/ejb3-0 tests fails due to securityexception
> ----------------------------------------------------
>
> Key: EJBTHREE-2131
> URL: https://jira.jboss.org/browse/EJBTHREE-2131
> Project: EJB 3.0
> Issue Type: Bug
> Components: timeout
> Reporter: jaikiran pai
> Assignee: jaikiran pai
>
> When running the unit tests in ejb3-0 module of timeout, I see this SecurityException:
> java.security.AccessControlException: access denied (java.io.FilePermission /tmp/surefire8958002439537574919tmp read)
> at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
> at java.security.AccessController.checkPermission(AccessController.java:546)
> at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
> at java.lang.SecurityManager.checkRead(SecurityManager.java:871)
> at java.io.File.exists(File.java:731)
> at org.apache.maven.surefire.booter.SurefireBooter.loadProperties(SurefireBooter.java:795)
> at org.apache.maven.surefire.booter.SurefireBooter.setSystemProperties(SurefireBooter.java:814)
> at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:915)
> access: access allowed (java.lang.RuntimePermission exitVM.1)
> The java.policy file (only the relevant section) is as follows:
> // for Maven
> grant codeBase "file:${maven.repo.local}/-" {
> permission java.security.AllPermission;
> };
> The maven.repo.local system property is set as follows in the timeout pom:
> <properties>
> <!-- per default maven.repo.local is null, so set up a sensible default -->
> <maven.repo.local>${user.home}/.m2/repository</maven.repo.local>
> </properties>
> and then used in surefire plugin as follows:
> <plugin>
> <artifactId>maven-surefire-plugin</artifactId>
> <configuration>
> <argLine>-Djava.security.manager -Djava.security.policy=${basedir}/src/test/resources/java.policy -Djava.security.debug=policy,failure,access -Dmaven.repo.local=${maven.repo.local}</argLine>
> </configuration>
> </plugin>
> On my system, the maven local repository is pointed to a custom path through settings.xml:
> <localRepository>/opt/maven/repository</localRepository>
> which causes this failure (since the codebase of the surefire jars doesn't match to $[user.home}/.m2/repository.
> Had a quick chat on #maven for a possible alternative to maven.repo.local which takes into account the settings.xml and found ${settings.localRepository}. Here's the relevant IRC discussion:
> (08:17:12 IST) Jaikiran: quick question about maven.repo.local system property that maven sets
> (08:17:18 IST) Jaikiran: i am using 2.0.9 maven
> (08:17:44 IST) Jaikiran: and in my settings.xml file i have set a custom value for localRepository element
> (08:18:02 IST) Jaikiran: i.e. instead of /home/me/.m2/repository i point it to /blah/maven/repo
> (08:18:17 IST) bsnyder left the room (quit: Ping timeout: 20 seconds).
> (08:18:17 IST) bsnyder_ is now known as bsnyder
> (08:18:38 IST) Jaikiran: but when i use ${maven.repo.local} property in surefire plugin configuration, i see that it passes /home/me/.m2/repository as the value
> (08:18:44 IST) Jaikiran: instead of the custom one
> (08:18:48 IST) Jaikiran: is this a known issue?
> (08:19:04 IST) bentmann: no, maven simply doesn't set maven.repo.local
> (08:19:12 IST) bentmann: it's a property the user may set
> (08:19:42 IST) Jaikiran: hmm, then i am confused
> (08:19:45 IST) Jaikiran: let me pastebin my config
> (08:20:24 IST) Jaikiran: line4 http://pastebin.com/Xbe67YDG
> (08:20:38 IST) Jaikiran: then in the testcase, i just do a system.getproperty for that prop
> (08:20:50 IST) Jaikiran: and i get /home/me/.m2/repository
> (08:22:56 IST) Jaikiran: bentmann: ignore me, in the *parent* pom i found this http://pastebin.com/Nr6qjTXn
> (08:23:03 IST) Jaikiran: sorry about the noise
> (08:23:32 IST) bentmann: you should try ${settings.localRepository}
> (08:23:43 IST) ***Jaikiran gives it a try
> (08:23:56 IST) bentmann: inside the surefire plugin config I mean
> (08:25:00 IST) tobrien left the room (quit: tobrien).
> benji bentmann
> (08:25:53 IST) Jaikiran: bentmann: excellent! that worked :) thanks
> (08:26:08 IST) Jaikiran: ~bentmann++
> (08:26:21 IST) bentmann: just be warned that ${settings.*} only works inside plugin configuration, not in the rest of the POM
> (08:27:01 IST) Jaikiran: i see.
> (08:27:12 IST) Jaikiran: luckily for me, that's where i want it
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list