Damn you, Jboss 5!

Hey there, Allan here.

Quick post for legacy projects:

So, some time ago I was  allocated at a legacy project that runs on Jboss 5.1. I’m not a huge fan of the early Jboss versions (jboss 5 and 6… jboss 4 is not that bad), mainly because of my previous experiences with these application servers.

I was “checkouting” (damn, that’s an ugly word!) the code and decided to download the Jboss version needed. So I went to Jboss Downloads and download the JBoss AS 5.1.0. Downloaded, put in my Tools folder and hit run.sh:

Failed to boot JBoss:
    java.lang.IllegalStateException: Incompletely deployed:

    *** DEPLOYMENTS IN ERROR: Name -> Error
    StandardBindings -> java.lang.IllegalArgumentException: Wrong arguments. new for
     target java.lang.reflect.Constructor expected=[int] actual=[java.util.HashSet]

    *** DEPLOYMENTS MISSING DEPENDENCIES: Name -> Dependency{Required State:Actual S
    ServiceBindingManager -> ServiceBindingStore{Installed:Instantiated}
    SystemPropertyBinder -> SystemPropertyBinder#1{Installed:Described}
    SystemPropertyBinder#1 -> ServiceBindingManager{Installed:Described}
    ServiceBindingStore -> StandardBindings{Installed:**ERROR**}

            at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.internalVa
            at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.validate(A
            at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java
            at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:
            at org.jboss.Main.boot(Main.java:209)
            at org.jboss.Main$1.run(Main.java:547)
            at java.lang.Thread.run(Unknown Source)

It was a clean start, I didn’t even copied my .ear to the deployment folder. Just download and run and error 😦

The Solution

The Jboss folks were pretty lazy in that one: there is a known bug in Jboss 5, that makes it impossible to start it without, manually, correcting one of it’s xml files.

Inside the conf files, there is the profile.xml. Locate, inside it, the AttachmentStore bean and correct it, putting the class=java.io.File in the parameter tag, as shown bellow:

<bean name="AttachmentStore"  
<parameter class="java.io.File">
<inject bean="BootstrapProfileFactory" property="attachmentStoreRoot" /></parameter></constructor>

Hope it helps 🙂

Leave a message

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s