Abdera not outputting correct namespace for <atom:link/> element in service
documents
-------------------------------------------------------------------------------------
Key: ABDERA-213
URL: https://issues.apache.org/jira/browse/ABDERA-213
Project: Abdera
Issue Type: Bug
Affects Versions: 0.4.0
Environment: Windows XP Pro; IBM JRE 1.5; IBM XLXP 1.1.1 STAX
implementation.
Reporter: Michael Ahern
Priority: Blocker
Fix For: 0.4.0
When outputting a set of <atom:link> elements inside a service document, the
first element has the correct namespace while subsequent elements do not.
Here is my output:
<?xml version="1.0" encoding="UTF-8"?>
<service xmlns:atom="http://www.w3.org/2005/Atom"
xmlns="http://www.w3.org/2007/app">
<generator xmlns="http://www.w3.org/2005/Atom" version="2.5.0"
uri="http://www.ibm.com/xmlns/prod/sn">Lotus Connections - Profiles</generator>
<workspace xmlns="http://www.w3.org/2007/app">
<title xmlns="http://www.w3.org/2005/Atom" type="text">MICHAEL I.
AHERN</title>
<collection xmlns="http://www.w3.org/2007/app"
href="http://ahernmt60.dyn.webahead.ibm.com:9080/profiles/atom/profile.do?email=ahernm%40us.ibm.com&output=vcard">
<title xmlns="http://www.w3.org/2005/Atom" type="text">MICHAEL I.
AHERN</title>
<userid
xmlns="http://www.ibm.com/xmlns/prod/sn">ab41d440-773f-1029-9e32-882a644e52b4</userid>
<editableFields>
....
</editableFields>
</collection>
<link xmlns="http://www.w3.org/2005/Atom"
href="http://ahernmt60.dyn.webahead.ibm.com:9080/profiles/atom/profileTags.do?targetKey=0a98ecd7-596d-4daf-8ace-e877bf24a6dc&lastMod=1231178866875"
rel="http://www.ibm.com/xmlns/prod/sn/tag-cloud"
type="application/atomcat+xml"></link>
<link
href="http://ahernmt60.dyn.webahead.ibm.com:9080/profiles/atom/connections.do?connectionType=colleague&key=0a98ecd7-596d-4daf-8ace-e877bf24a6dc&lastMod=1231178866875"
rel="http://www.ibm.com/xmlns/prod/sn/connections/colleague"
type="application/atom+xml"></link>
<link xmlns:snx="http://www.ibm.com/xmlns/prod/sn"
href="http://ahernmt60.dyn.webahead.ibm.com:9080/profiles/atom/profileExtension.do?key=0a98ecd7-596d-4daf-8ace-e877bf24a6dc&extensionId=profileLinks&lastMod=1231178866875"
rel="http://www.ibm.com/xmlns/prod/sn/ext-attr" type="text/xml"
snx:extensionId="profileLinks"></link>
<link xmlns:snx="http://www.ibm.com/xmlns/prod/sn"
href="http://ahernmt60.dyn.webahead.ibm.com:9080/profiles/atom/profileExtension.do?key=0a98ecd7-596d-4daf-8ace-e877bf24a6dc&extensionId=tieline&lastMod=1231178866875"
rel="http://www.ibm.com/xmlns/prod/sn/ext-attr" type="text/plain"
snx:extensionId="tieline"></link>
<link xmlns:snx="http://www.ibm.com/xmlns/prod/sn"
href="http://ahernmt60.dyn.webahead.ibm.com:9080/profiles/atom/profileExtension.do?key=0a98ecd7-596d-4daf-8ace-e877bf24a6dc&extensionId=lifestory&lastMod=1231178866875"
rel="http://www.ibm.com/xmlns/prod/sn/ext-attr" type="text/html"
snx:extensionId="lifestory"></link>
</workspace>
</service>
And here is the code to generate this:
sw.startDocument();
sw.startService();
//sw.writeAttribute(XMLNS_ATOM, NS_ATOM);
sw.writeGenerator("2.5.0",NS_SNX,"Lotus Connections -
Profiles");
sw.startWorkspace();
sw.writeTitle(bean.userRecord.getDisplayName()); //
ResourceManager.getString(request.getLocale(), "lc.author")
sw.startCollection(getProfileUrl(request,true)); //
START - Collection
sw.writeTitle(bean.userRecord.getDisplayName());
sw.writeAccepts();
// Stuff for ST support
sw.startElement(AtomGenerator2.QN_USERID).writeElementText(bean.userRecord.getUserid()).endElement();
sw.startElement(QN_EDITABLE_FIELDS);
{
// ...
}
sw.endElement(); // END -
QN_EDITABLE_FIELDS
sw.endCollection(); // END -
Collection
//
// Write various links
//
String profilesUrl = FeedUtils.getProfilesURL(request);
Date profileLastMod = bean.userRecord.getLastUpdate();
// link to tag cloud
sw.writeLink(
FeedUtils.calculateTagCloudUrl(bean.userRecord.getKey(), profilesUrl,
profileLastMod),
LINK_REL_TAG_CLOUD, APP_MIME_TYPE);
// link to colleagues
sw.writeLink(
FeedUtils.calculateColleaguesConnectionsUrl(bean.userRecord.getKey(),
profilesUrl, profileLastMod),
LINK_REL_COLLEAGUE_CONNECTIONS, ATOM_MIME_TYPE);
// links to extension attributes
// ....
sw.endWorkspace();
sw.endService();
sw.endDocument();
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.