Alternatively, use something like
http://www.w3schools.com/xml/xml_cdata.asp and
put all your values in a CDATA block.  Again, I'm not an XML guru but
something like that should get you moving.


On 20 December 2013 09:05, Daniel Collins <danwcoll...@gmail.com> wrote:

> Yes, but you are putting the <root> tag (which is an XML construct) as a
> value of an XML element, so it has to be encoded?  You've put it in quotes,
> but that's not valid as far as XML is concerned. I'm not an XML expert but
> all the XML tags (root, conditionGroup, etc) have to encoded so they aren't
> parsed by the entity that is parsing the field tag (i.e. Solr's request
> parser).  I think you need something like
>
> <field update="set" name="jobFirstRunExpress"
> >&lt;root&gt;&lt;conditionGroup&gt;&lt;conditionEntry ...
> </field>
>
> I don't know the correct way to encode the rest but that should be a
> standard XML problem to solve, if you search around for that.  Basically,
> the value of the field tag needs to be a string that has no XML tags within
> it otherwise Solr will try to parse it (and fail since it isn't in Solr's
> XML format for updates).
>
>
>
> On 20 December 2013 08:48, YouPeng Yang <yypvsxf19870...@gmail.com> wrote:
>
>> Hi
>>    Thanks for your reply.
>>
>>    The <root>....</root>  is actually what I want to update the doc. That
>> is I intend to  update the xml string to one of the fields of my doc.
>> The url I have not found  I want.
>>    Any way,thanks a lot.
>>
>> Regards.
>>
>>
>> 2013/12/20 Gora Mohanty <g...@mimirtech.com>
>>
>> > On 20 December 2013 13:57, YouPeng Yang <yypvsxf19870...@gmail.com>
>> wrote:
>> > > Hi solr users
>> > >
>> > >   I have a  string field to store a xml string. Now I want to update
>> the
>> > > field.I use the command.
>> > >
>> > > http://10.7.23.122:8080/solr/meta_core/update?stream.body=
>> > <add><doc><field
>> > > name="name">shardTv_20131031</field><field update="set"
>> > > name="jobFirstRunExpress" >"<root><conditionGroup><conditionEntry
>> > > type=\"string\" isChangeable=\"true\"
>> > >><key>REP_DATE</key><op>></op><val>20130930</val></conditionEntry>
>> > > <op>and</op> <conditionEntry type=\"string\" isChangeable=\"true\"
>> >
>> >
>> >><key>REP_DATE</key><op><</op><val>20131003</val></conditionEntry></conditionGroup></root>
>> > > "</field></doc></add>&commit=true
>> > >
>> > > The red color string is what I want to update .However it give out an
>> > error:
>> >
>> > Um, the error message is pretty clear. Your XML is not in the format
>> > that Solr expects: You have a <root> tag that Solr does not understand.
>> > Please see http://wiki.apache.org/solr/UpdateXmlMessages for the
>> > required XML format.
>> >
>> > Regards,
>> > Gora
>> >
>>
>
>

Reply via email to