You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by Oliver Heger <ol...@oliver-heger.de> on 2015/01/06 18:40:07 UTC

Re: [configuration] Adding CData to xml property


On 06.01.2015 17:55, jeevi tesh wrote:
> Hi,
>
> Need to add CDATA into XML Property element, but special character are
> getting added. Here is my code. Please give your thoughts on the same.
>
> Here is the code.
>
> String cDataTagStart="\\<![CDATA[";
>
> String cDataTagEnd="]]\\>";
>
> credentialsURL =cDataTagStart+credentialsURL+cDataTagEnd;
>
> xmlContentOfMetaData = CredentialProvider.*getInstance*();
>
> xmlContentOfMetaData.addProperty("Resource(-1).ResourceName", resourceName);
>
> xmlContentOfMetaData.addProperty("Resource.ResourceURL", credentialsURL);
>
>
>
> But Special characters are getting added
>
> ResourceName>TESTRESOURCENAME</ResourceName>
>
> <ResourceURL>\&lt;![CDATA[TESTCredentialsURLS2]]\&gt;</ResourceURL>
>

XMLConfiguration ensures that for newly added or updated properties 
valid XML is generated. Therefore, special characters are encoded 
automatically. This frees applications from the burden to do the 
encoding manually. However, there is less control of the XML generated.

Currently, XMLConfiguration does not supported the generation of CDATA 
sections. You may want to add a feature request in our bug tracking 
system [1].

Oliver

[1] 
http://commons.apache.org/proper/commons-configuration/issue-tracking.html

>
> Thanks
>
> jeevitesh
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Re: [configuration] Adding CData to xml property

Posted by Bernd Eckenfels <ec...@zusammenkunft.net>.
Hello,

it does not work to set a value with a valid CDATA tag, that is what
the API is about: it will automatically properly escape all strings so
it cannot be produce broken xml.

I guess it does not allow you to influence the escape style (so that
you can enforce it to use CDATA), but the question is do you really
need it - using character entities might just work as well.

Gruss
Bernd


 Am Thu, 8 Jan 2015 11:30:28 +0530
schrieb jeevi tesh <je...@gmail.com>:

> Hi martin,
> Thanks for the helping hand.
> 
> I tried with the approach which you said but no fruit.
> StringBuffer cDataTagStart= new StringBuffer();
> cDataTagStart.append("3C![CDATA[");
> cDataTagStart.append("]]3E");
> 
> xmlContentOfMetaData.addProperty("Resource.ResourceURL",
> cDataTagStart);
> 
> Still Its adding Special charters
> <ResourceURL>003C![CDATA[]]003E</ResourceURL>
> 
> Also tried with below approach
> cDataTagStart.append("&lt;![CDATA[");
> cDataTagStart.append("]]&gt;");
> 
> cDataTagStart.append("003C![CDATA[");
> cDataTagStart.append("]]003E");
> 
> cDataTagStart.append("\u003C![CDATA[");
> cDataTagStart.append("]]\u003E");
> 
> None of the above resulted in adding <![[CData> Tag
> 
> Thanks
> 
> On Wed, Jan 7, 2015 at 9:03 PM, Martin Gainty <mg...@hotmail.com>
> wrote:
> 
> >
> >
> > > Date: Tue, 6 Jan 2015 18:40:07 +0100
> > > From: oliver.heger@oliver-heger.de
> > > To: user@commons.apache.org
> > > Subject: Re: [configuration] Adding CData to xml property
> > >
> > >
> > >
> > > On 06.01.2015 17:55, jeevi tesh wrote:
> > > > Hi,
> > > >
> > > > Need to add CDATA into XML Property element, but special
> > > > character are getting added. Here is my code. Please give your
> > > > thoughts on the same.
> > > >
> > > > Here is the code.
> > > >
> > > > String cDataTagStart="\\<![CDATA[";
> > > >
> > > > String cDataTagEnd="]]\\>";
> > > >
> > > > credentialsURL =cDataTagStart+credentialsURL+cDataTagEnd;
> > > >
> > > > xmlContentOfMetaData = CredentialProvider.*getInstance*();
> > > >
> > > > xmlContentOfMetaData.addProperty("Resource(-1).ResourceName",
> > resourceName);
> > > >
> > > > xmlContentOfMetaData.addProperty("Resource.ResourceURL",
> > credentialsURL);
> > > >
> > > >
> > > >
> > > > But Special characters are getting added
> > > >
> > > > ResourceName>TESTRESOURCENAME</ResourceName>
> > > >
> > > > <ResourceURL>\<![CDATA[TESTCredentialsURLS2]]\></ResourceURL>
> > > >
> > >
> > > XMLConfiguration ensures that for newly added or updated
> > > properties valid XML is generated. Therefore, special characters
> > > are encoded automatically. This frees applications from the
> > > burden to do the encoding manually. However, there is less
> > > control of the XML generated.
> > >
> > > Currently, XMLConfiguration does not supported the generation of
> > > CDATA sections. You may want to add a feature request in our bug
> > > tracking system [1].
> >
> > MG>In the meanwhile why not use StringBuffer to concatenate the
> > MG>Unicode
> > equivalent for your CDATA
> > MG>example: this prints the Unicode equivalent of the divisor
> > MG>character '÷' System.out.println("\\u" +
> > Integer.toHexString('÷'|0x10000).substring(1) )>
> >
> > > Oliver
> > >
> > > [1]
> > >
> > http://commons.apache.org/proper/commons-configuration/issue-tracking.html
> > >
> > > >
> > > > Thanks
> > > >
> > > > jeevitesh
> > > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> > > For additional commands, e-mail: user-help@commons.apache.org
> > >
> >
> >
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Re: [configuration] Adding CData to xml property

Posted by jeevi tesh <je...@gmail.com>.
Hi martin,
Thanks for the helping hand.

I tried with the approach which you said but no fruit.
StringBuffer cDataTagStart= new StringBuffer();
cDataTagStart.append("3C![CDATA[");
cDataTagStart.append("]]3E");

xmlContentOfMetaData.addProperty("Resource.ResourceURL", cDataTagStart);

Still Its adding Special charters
<ResourceURL>003C![CDATA[]]003E</ResourceURL>

Also tried with below approach
cDataTagStart.append("&lt;![CDATA[");
cDataTagStart.append("]]&gt;");

cDataTagStart.append("003C![CDATA[");
cDataTagStart.append("]]003E");

cDataTagStart.append("\u003C![CDATA[");
cDataTagStart.append("]]\u003E");

None of the above resulted in adding <![[CData> Tag

Thanks

On Wed, Jan 7, 2015 at 9:03 PM, Martin Gainty <mg...@hotmail.com> wrote:

>
>
> > Date: Tue, 6 Jan 2015 18:40:07 +0100
> > From: oliver.heger@oliver-heger.de
> > To: user@commons.apache.org
> > Subject: Re: [configuration] Adding CData to xml property
> >
> >
> >
> > On 06.01.2015 17:55, jeevi tesh wrote:
> > > Hi,
> > >
> > > Need to add CDATA into XML Property element, but special character are
> > > getting added. Here is my code. Please give your thoughts on the same.
> > >
> > > Here is the code.
> > >
> > > String cDataTagStart="\\<![CDATA[";
> > >
> > > String cDataTagEnd="]]\\>";
> > >
> > > credentialsURL =cDataTagStart+credentialsURL+cDataTagEnd;
> > >
> > > xmlContentOfMetaData = CredentialProvider.*getInstance*();
> > >
> > > xmlContentOfMetaData.addProperty("Resource(-1).ResourceName",
> resourceName);
> > >
> > > xmlContentOfMetaData.addProperty("Resource.ResourceURL",
> credentialsURL);
> > >
> > >
> > >
> > > But Special characters are getting added
> > >
> > > ResourceName>TESTRESOURCENAME</ResourceName>
> > >
> > > <ResourceURL>\<![CDATA[TESTCredentialsURLS2]]\></ResourceURL>
> > >
> >
> > XMLConfiguration ensures that for newly added or updated properties
> > valid XML is generated. Therefore, special characters are encoded
> > automatically. This frees applications from the burden to do the
> > encoding manually. However, there is less control of the XML generated.
> >
> > Currently, XMLConfiguration does not supported the generation of CDATA
> > sections. You may want to add a feature request in our bug tracking
> > system [1].
>
> MG>In the meanwhile why not use StringBuffer to concatenate the Unicode
> equivalent for your CDATA
> MG>example: this prints the Unicode equivalent of the divisor character '÷'
> MG>System.out.println("\\u" +
> Integer.toHexString('÷'|0x10000).substring(1) )>
>
> > Oliver
> >
> > [1]
> >
> http://commons.apache.org/proper/commons-configuration/issue-tracking.html
> >
> > >
> > > Thanks
> > >
> > > jeevitesh
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> > For additional commands, e-mail: user-help@commons.apache.org
> >
>
>

RE: [configuration] Adding CData to xml property

Posted by Martin Gainty <mg...@hotmail.com>.

> Date: Tue, 6 Jan 2015 18:40:07 +0100
> From: oliver.heger@oliver-heger.de
> To: user@commons.apache.org
> Subject: Re: [configuration] Adding CData to xml property
> 
> 
> 
> On 06.01.2015 17:55, jeevi tesh wrote:
> > Hi,
> >
> > Need to add CDATA into XML Property element, but special character are
> > getting added. Here is my code. Please give your thoughts on the same.
> >
> > Here is the code.
> >
> > String cDataTagStart="\\<![CDATA[";
> >
> > String cDataTagEnd="]]\\>";
> >
> > credentialsURL =cDataTagStart+credentialsURL+cDataTagEnd;
> >
> > xmlContentOfMetaData = CredentialProvider.*getInstance*();
> >
> > xmlContentOfMetaData.addProperty("Resource(-1).ResourceName", resourceName);
> >
> > xmlContentOfMetaData.addProperty("Resource.ResourceURL", credentialsURL);
> >
> >
> >
> > But Special characters are getting added
> >
> > ResourceName>TESTRESOURCENAME</ResourceName>
> >
> > <ResourceURL>\&lt;![CDATA[TESTCredentialsURLS2]]\&gt;</ResourceURL>
> >
> 
> XMLConfiguration ensures that for newly added or updated properties 
> valid XML is generated. Therefore, special characters are encoded 
> automatically. This frees applications from the burden to do the 
> encoding manually. However, there is less control of the XML generated.
> 
> Currently, XMLConfiguration does not supported the generation of CDATA 
> sections. You may want to add a feature request in our bug tracking 
> system [1].

MG>In the meanwhile why not use StringBuffer to concatenate the Unicode equivalent for your CDATA
MG>example: this prints the Unicode equivalent of the divisor character '÷'
MG>System.out.println("\\u" + Integer.toHexString('÷'|0x10000).substring(1) )> 

> Oliver
> 
> [1] 
> http://commons.apache.org/proper/commons-configuration/issue-tracking.html
> 
> >
> > Thanks
> >
> > jeevitesh
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>