hi H s,

Not sure what you really want to do here. By parsing do you mean you
would like to extract all the attributes or do something else.

I would recommend using XPath if you would like to quickly extract all
the nodes. The quick start guide on dom4j is a excellent source of
quick examples to help you get started.

Cheers
anand raman

On 6/22/07, H s <[EMAIL PROTECTED]> wrote:
> Hi there,
>
> Here is the piece of code which I'm using to parse the given XML . Is there
> a better way than this ?
>
> <acl_config >
>         <acl name="Test">
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_DELETE"/>
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_NONE"/>
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_WRITE"/>
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_RELATE"/>
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_NONE"/>
>                 <privilege group="testaclgroupharjit" 
> permission="PERMIT_VERSION"/>
>         </acl>
>         <acl name="Test1">
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>                 <privilege group="testaclgroupharjit2" 
> permission="PERMIT_BROWSE"/>
>         </acl>
> </acl_config>
>
>
> List aclConfigObjectList = new ArrayList();
>                 String aclXPath = "/acl_config/*";
>                 XPath xpathSelector = DocumentHelper.createXPath(aclXPath);
>                 List results = xpathSelector.selectNodes(xmldocument);
>                 Attribute aclName;
>                 Attribute groupName;
>                 Attribute permission;
>                 String aclValue = null;
>                 ACLConfig aclConfig = null;
>                 GroupConfig groupConfig = null;
>                 Vector groups = null;
>                 if (results != null) {
>                         for (int i = 0; i < results.size(); ++i) {
>                                 Element e = (Element) results.get(i);
>                                 if ((aclName = e.attribute(NAME)) != null) {
>                                         aclConfig = new ACLConfig();
>                                         
> aclConfig.setAclName(aclName.getValue());
>                                         groups = new Vector();
>                                         int iNodeCount = e.nodeCount();
>                                         for (int iNodeIndex = 0; iNodeIndex < 
> iNodeCount; ++iNodeIndex) {
>                                                 Node node = 
> e.node(iNodeIndex);
>                                                 if (node instanceof Element) {
>                                                         Element group = 
> (Element) node;
>                                                         groupConfig = new 
> GroupConfig();
>                                                         if 
> (group.attribute(GROUP) != null) {
>                                                                 groupName = 
> group.attribute(GROUP);
>                                                                 
> groupConfig.setGroupName(groupName.getValue());
>                                                         }
>                                                         if 
> (group.attribute(PERMISSION) != null) {
>                                                                 permission = 
> group.attribute(PERMISSION);
>                                                                 groupConfig
>                                                                               
>   .setPermission(lookupPermission(permission
>                                                                               
>                   .getValue()));
>                                                                 
> groups.add(groupConfig);
>                                                         }
>                                                 }
>                                         }
>
>                                         if (groups.size() > 0) {
>                                                 
> aclConfig.setGroupVector(groups);
>                                         }
>                                         aclConfigObjectList.add(aclConfig);
>                                 }
>                         }
>
> _________________________________________________________________
> Hotmail to go? Get your Hotmail, news, sports and much more!
> http://mobile.msn.com
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> dom4j-user mailing list
> dom4j-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dom4j-user
>

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
dom4j-user mailing list
dom4j-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dom4j-user

Reply via email to