Amazon Event Notification Web Service – Java SDK ivy dependicies

Event Notification Web Service (ENS) is an interesting Amazon API.  It was launched in 2007 and seems to have a mixed history.  It is really not clear if this is supported or not.  The published documentation is minimal:

http://www.amazon.com/gp/help/customer/display.html/ref=hp_bc_nav?ie=UTF8&nodeId=200122950

The forum has no Amazon folks in sight:

http://www.amazonsellercommunity.com/forums/forum.jspa?forumID=31&start=0

Some of the older APIs that have been abandoned clearly state that fact in the forum.   For example, the Amazon Inventory Management (AIM) API is superseded by MWS:

http://www.amazonsellercommunity.com/forums/forum.jspa?forumID=30

I think this API has been abandoned without such a post.  This API seems to be supported by folks from Seller Ceneteral and not AWS.  Maybe this is a relic of a internal power struggle with ENS getting the short end of the stick.

In any case, a java SDK can be downloaded as an eclipse project from here:

http://www.amazon.com/gp/help/customer/display.html/ref=hp_rel_topic?ie=UTF8&nodeId=200125000

The main issue with getting the project to compile is that the required jars are not included.  Here is a ivy dependency list that worked for me:

<dependencies>
<dependency org=”commons-httpclient” name=”commons-httpclient” rev=”3.1″ />
<dependency org=”org.apache.axis” name=”axis” rev=”1.4″/>
<dependency org=”javax.xml.ws” name=”jaxws-api” rev=”2.0″/>
<dependency org=”com.sun.xml.ws” name=”jaxws-rt” rev=”2.1.3″/>
<dependency org=”com.sun.xml.ws” name=”jaxws-tools” rev=”2.1.3″/>
<dependency org=”xalan” name=”xalan” rev=”2.7.1″/>
<dependency org=”org.apache.cxf” name=”cxf-bundle-minimal” rev=”2.2.3″/>
<dependency org=”commons-discovery” name=”commons-discovery” rev=”0.4″/>
<dependency org=”javax.xml” name=”jaxrpc-api” rev=”1.1″/>
</dependencies>

The one other issue is that the source code refeers to:

javax.xml.bind.annotation.AccessorType

in a few places.  Change this to:

javax.xml.bind.annotation.XmlAccessorType

and you should be off to the races.

Leave a Reply