Strawberrys

Like of the day

Strawberries at 65p a large punit

Another day another country Austria. We are in a small site in a town called Reutte on our way to Innsbruck as you can see from the pic there is plenty of snow still on the hills.

We have come as far south in Germany as possible to lake Constance (Bodensee) We are in a town called Uberlingen on the shore of the lake.

It is a beautiful clean tourist town with a backdrop of snow covered mountains on the southern side. the weather is a lot better so I am giving my varicose veins a bit of fresh air

Like of the day

Italian lady who gave us a parking ticket for the stellplatz saveing us 10 euro

The river Moselle as it is called in France and Luxemborgh and mosel in Germany. Starts life in France then becomes the boarder between Luxemborgh and Germany. Then mianders to join the Rhein at Koblenz.

In this area it is a large river being used as a major transport link taking large barges of 2500 tons carrying mainly coal and sand

The main agriculture in the moselle (mosel) valley is wine growing, and every piece of available land is growing vines, even in Luxemborgh. This time of year they are freshly pruned waiting for the sun.

I found most interesting the little mono rails that took people up and grapes down the steep valleys. They look like some thing out of a Indiana Jones movie.

We had a good walk from Enkirch to Trarbach and back up the other side of the river, catching this little ferry back to the stellplatz.

The weather is still rubbish so we are going to head south to the Swisse boarder.

Like of the day

The best thing about a camper, you can set off in a morning change your mind 3 times and end up on a fantastic pitch that ticks all the boxes

Top Tip

When using a German camper service point for the first time make sure your water pipe connections are in good conditions as the water pressure is very high and you could get covered in cold water. (and the locals find it quite funny)

Classic Quote

The measure of a mans riches is the fewness of his wants

Loader constraint violation on JAVAX webservice (client)

OK, you have done a nice simple Web service client, it runs fine in your tests, you bung it on JBoss and when ever you trigger it you get something like this

java.lang.LinkageError: loader constraint violation: when resolving method “javax.xml.ws.Service.(Ljava/net/URL;Ljavax/xml/namespace/QName;)V” the class loader (instance of org/jboss/classloader/spi/base/BaseClassLoader) of the current class, com/sun/j2ee/blueprints/opc/powebservice/XYZService, and the class loader (instance of ) for resolved class, javax/xml/ws/Service, have different Class objects for the type javax/xml/namespace/QName used in the signature

You might miss the “loader constraint violation” part and think that its to do with the QName, or that your @WebServiceRef annotation is not working, well don’t bother, you have a clashing .Jar library, and its most likely going to be “stax-api” (which Jboss loads before you even get there with your app), so you will want to looking in your Lib directory ( which will be in the “WEB-INF” directory in your war file or build target directory ) of your packaged app to see if the little devil is in there, if you’re dealing with your libs manually then you are going to just have to remember why you put it there (although http://www.findjar.com/ can be a lot of help there), if you are using maven then the following command will tell what jar’s come from which libs

mvn dependency:tree

This gives you the following kind of display

[INFO] [dependency:tree {execution: default-cli}]
[INFO] com.firstbest:fbs-mobile-proxy:war:0.1
[INFO] +- asm:asm:jar:3.3:compile
[INFO] +- org.apache.ant:ant:jar:1.7.0:compile
[INFO] '  - org.apache.ant:ant-launcher:jar:1.7.0:compile
[INFO] +- com.sun.jersey:jersey-servlet:jar:1.12:compile
[INFO] '  - com.sun.jersey:jersey-server:jar:1.12:compile
[INFO] +- com.sun.jersey:jersey-json:jar:1.12:compile
[INFO] '  +- org.codehaus.jettison:jettison:jar:1.1:compile
[INFO] '  '  - stax:stax-api:jar:1.0.1:compile
[INFO] '  +- com.sun.xml.bind:jaxb-impl:jar:2.1.12:compile (version managed from
 2.2.3-1)
[INFO] '  '  - javax.xml.bind:jaxb-api:jar:2.1:compile
[INFO] '  '     - javax.activation:activation:jar:1.1:compile
[INFO] '  +- org.codehaus.jackson:jackson-core-asl:jar:1.9.2:compile
[INFO] '  +- org.codehaus.jackson:jackson-mapper-asl:jar:1.9.2:compile
[INFO] '  +- org.codehaus.jackson:jackson-jaxrs:jar:1.9.2:compile
[INFO] '  +- org.codehaus.jackson:jackson-xc:jar:1.9.2:compile
[INFO] '  - com.sun.jersey:jersey-core:jar:1.12:compile
[INFO] +- log4j:log4j:jar:1.2.16:compile
[INFO] +- junit:junit:jar:4.10:test
[INFO] '  - org.hamcrest:hamcrest-core:jar:1.1:test
[INFO] +- taglibs:standard:jar:1.1.2:compile
[INFO] +- org.apache.ws.commons:ws-commons-util:jar:1.0.1:compile
[INFO] '  - xml-apis:xml-apis:jar:2.0.2:compile (version managed from 1.0.b2)
[INFO] - org.apache.neethi:neethi:jar:3.0.1:compile
[INFO]    +- wsdl4j:wsdl4j:jar:1.6.2:compile
[INFO]    - org.codehaus.woodstox:woodstox-core-asl:jar:4.0.8:compile
[INFO]       - org.codehaus.woodstox:stax2-api:jar:3.0.2:compile

You will now need to put in exclusions in your pom.xml to stop the jars that you don’t want from being loaded in, here is an example

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-servlet</artifactId>
    <version>1.12</version>
    <exclusions>
        <exclusion>
            <artifactId>stax-api</artifactId>
            <groupId>javax.xml.stream</groupId>
        </exclusion>
    </exclusions>
</dependency>

You might have to add a number of these and check the dependency:tree each time to make sure another does not pop in, in order to get them all.

This SHOULD fix your problem, but sometimes you either want your version of the Jar file to be on the server or you simply cant seem to get rid of a jar field in your build, you can tell jboss to use your jars over its own one by adding a jboss-classloading.xml file in src/main/webapp/WEB-INF directory. and adding the following lines to it.

<?xml version="1.0" encoding="UTF-8"?>
<classloading xmlns="urn:jboss:classloading:1.0"
              export-all="NON_EMPTY"
              import-all="true"
              parent-first="false">
</classloading>

That should sort it out.

Old Comments
————

##### Ben Poole(23/04/2012 23:11:54 GDT)
This sort of shyte is why we love Java so.

No. Really.

##### Mark Myers(12/05/2012 13:23:16 GDT)
tell me about it

Travelled through France

Top Tip

When doing a 3 point turn in a little village, using a entrance drive.Ensure the drive is not steep or your tow bar will make a groove in the tarmac.

update 18/4/2012

Its been a unusual day, Travelled through France, Belgium and into Luxumberg, booze cheap, cigs and cigs cheap, Diesel £1.04 a ltr (can’t fault the country)

We are now pitched in a marina sitting looking at the river Moselle and Germany. I even found a good quality Lawson whiskey at £8.00 a bottle, Despite the weather its going to be a good night, David Attenborough on the c.d. player, apple cakes in the fridge. Its a hard life being a old retired codger.

Like of the day

(Wendy) Winding forest roads with swathes of wood anenone

We are on a site beside the river in Charleville Mezieres which is in the Ardennes. We had a good ferry crossing, which was strange for us with using the tunnel for the last 7 years, Ferries seem so slow. But they are cheap. Tom Tom then took us through Belgium (because the motorways are free) The van is running great we have done 500 miles at a average 29 mpg thats better than our Zafira used to do.

I’m very concerned about Wendy she has grown hairs on her feet.