[
https://issues.apache.org/jira/browse/ABDERA-142?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12586094#action_12586094
]
Joseph Pecoraro commented on ABDERA-142:
----------------------------------------
That makes sense, Thanks!
> ClassCastException when trying to get a Service Document
> --------------------------------------------------------
>
> Key: ABDERA-142
> URL: https://issues.apache.org/jira/browse/ABDERA-142
> Project: Abdera
> Issue Type: Bug
> Affects Versions: 0.2.2
> Environment: Windows XP Java 1.4.2 and Java 5.
> Abdera 0.2 and 0.2.2.
> Reporter: Joseph Pecoraro
> Fix For: 0.2.2
>
>
> I get a ClassCastException when trying to pull a Service Document. The
> CommonsClient correctly pulls the Service Document for the server and the
> Service Document is valid. I will point out right now that this works just
> fine in Abdera 0.3.
> Example Error:
> java.lang.ClassCastException:
> org.apache.abdera.parser.stax.FOMExtensibleElement incompatible with
> org.apache.abdera.model.Service
> Example Main to get the above error: [meant to be dirty but short]
> public static void main(String[] args) {
> ClientResponse _response = null;
> try {
> Abdera _abdera = new Abdera();
> CommonsClient _client = new CommonsClient(_abdera);
> _client.usePreemptiveAuthentication(true);
> _client.addCredentials("https://dogear.tap.ibm.com",
> null, null, new UsernamePasswordCredentials("username", "password"));
> CommonsClient.registerTrustManager();
> _response =
> _client.get("https://dogear.tap.ibm.com/api/app");
> if(_response != null && _response.getStatus() == 200) {
> InputStream in = _response.getInputStream();
> if( in != null ) {
> Document<Service> doc =
> _abdera.getParser().parse(in);
> Service aService = (Service)doc.getRoot();
> }
> }
> }
> catch(Exception e) { e.printStackTrace(); }
> finally { _response.release(); }
> }
> More Information:
> If I take the same code and instead grab a Feed instead of a Service Document
> using a Feed URL (such as
> https://dogear.tap.ibm.com/api/app?email=jjpecora%40us.ibm.com) and change
> all occurrences of "Service" to "Feed" it runs without any issues and the
> Feed is loaded properly The same can be done with an Entry just like a Feed.
> If I take the same code and instead use Abdera 0.3 (and replace all instances
> of "CommonsClient" with "AbderaClient") it runs without any issues.
> I have tried multiple Service Documents and the error persists. I manually
> read and scanned the InputStream for abnormalities that I thought might have
> affected the Parser and it looks like a perfectly valid Atom Service Document.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.