Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Filtering out org.apache.commons.jexl.
Wiki Markup
{scrollbar}

Anchor
top
top

Note

Most of the customizations of the configuration files are due to David Wu who graciously helped tracking down and fixing all the NoSuchMethodErrors that appeared along the way.

This short document is about the steps to deploy Hudson onto Apache Geronimo 2. Hudson is a....go and read it on its web site. No need to duplicate their stuff here.

...

The plan configures a security realm hudson-realm as well as /hudson as a context for hudson.war.

The plan filters out org.apache.commons.lang. package that comes with Apache Commons Lang 2.0 in Geronimo 2.0.2. As of Hudson 1.160, Apache Commons Lang 2.1 is required and is already included in the war file.

It appears that Hudson uses a customized version of Apache JEXL made specfically for itself so filtering the package from the web classloader is required.

Code Block
xml
xml
borderStylesolid
titlehudson-geronimo-plan.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0">
  <environment xmlns="http://geronimo.apache.org/xml/ns/deployment-1.2">
    <moduleId>
      <groupId>hudson</groupId>
      <artifactId>hudson</artifactId>
      <version>1.166</version>
      <type>war</type>
    </moduleId>
    <dependencies>
      <dependency>
        <groupId>org.apache.geronimo.configs</groupId>
        <artifactId>j2ee-security</artifactId>
        <type>car</type>
      </dependency>
    </dependencies>
    <hidden-classes>
      <filter>org.apache.commons.lang.</filter>
      <filter>org.apache.commons.jexl.</filter>
    </hidden-classes>
  </environment>

  <context-root>/hudson</context-root>

  <security-realm-name>hudson-realm</security-realm-name>
  <security>
    <default-principal realm-name="hudson-realm">
      <principal name="anonymous" class="org.apache.geronimo.security.realm.providers.GeronimoUserPrincipal" />
    </default-principal>
    <role-mappings>
      <role role-name="admin">
        <realm realm-name="hudson-realm">
          <principal name="AdminGroup" class="org.apache.geronimo.security.realm.providers.GeronimoGroupPrincipal" />
        </realm>
        <principal name="system" class="org.apache.geronimo.security.realm.providers.GeronimoUserPrincipal" />
      </role>
    </role-mappings>
  </security>
</web-app>

...