Or use the XsltResponseWriter :)

On Sat, Aug 8, 2015 at 7:51 PM, Shalin Shekhar Mangar
<shalinman...@gmail.com> wrote:
> No, I'm afraid you will have to extend the XmlResponseWriter in that case.
>
> On Sat, Aug 8, 2015 at 2:02 PM, Dmitry Kan <solrexp...@gmail.com> wrote:
>> Shalin,
>>
>> Thanks, can I also introduce custom entity tags like in my example with the
>> highlighter output?
>>
>> Dmitry
>>
>> On Fri, Aug 7, 2015 at 5:10 PM, Shalin Shekhar Mangar <
>> shalinman...@gmail.com> wrote:
>>
>>> The thing is that you are trying to introduce custom xml tags which
>>> require changing the response writers. Instead, if you just used
>>> nested maps/lists or SimpleOrderedMap/NamedList then every response
>>> writer should be able to just directly write the output. Nesting is
>>> not a problem.
>>>
>>> On Fri, Aug 7, 2015 at 6:09 PM, Dmitry Kan <solrexp...@gmail.com> wrote:
>>> > Shawn:
>>> >
>>> > thanks, we found an intermediate solution by serializing our data
>>> structure
>>> > using string representation, perhaps less optimal than using binary
>>> format
>>> > directly.
>>> >
>>> > In the original router with JavaBinCodec we found, that
>>> > BinaryResponseWriter should also be extended. But the following method is
>>> > static and does allow extending:
>>> >
>>> > public static NamedList<Object> getParsedResponse(SolrQueryRequest
>>> > req, SolrQueryResponse rsp) {
>>> >   try {
>>> >     Resolver resolver = new Resolver(req, rsp.getReturnFields());
>>> >
>>> >     ByteArrayOutputStream out = new ByteArrayOutputStream();
>>> >     new JavaBinCodec(resolver).marshal(rsp.getValues(), out);
>>> >
>>> >     InputStream in = new ByteArrayInputStream(out.toByteArray());
>>> >     return (NamedList<Object>) new JavaBinCodec(resolver).unmarshal(in);
>>> >   }
>>> >   catch (Exception ex) {
>>> >     throw new RuntimeException(ex);
>>> >   }
>>> > }
>>> >
>>> >
>>> >
>>> > Shalin:
>>> >
>>> > We needed new data structure in highlighter with more nested levels,
>>> > than just one. Something like this (in xml representation):
>>> >
>>> > <lst name="highlighting">
>>> >   <lst name="doc1">
>>> >     <arr name="snippets">
>>> >       <snippet>
>>> >
>>> >          <id>id1</id>
>>> >
>>> >          <contents>Snippet text goes here</contents>
>>> >
>>> >          <other params/>
>>> >
>>> >       </snippet>
>>> >
>>> >     </arr>
>>> >
>>> >
>>> >   </lst></lst>
>>> >
>>> > Can this be modelled with existing types?
>>> >
>>> >
>>> > On Thu, Aug 6, 2015 at 9:47 PM, Shalin Shekhar Mangar <
>>> > shalinman...@gmail.com> wrote:
>>> >
>>> >> What do you mean by a custom format? As long as your custom component
>>> >> is writing primitives or NamedList/SimpleOrderedMap or collections
>>> >> such as List/Map, any response writer should be able to handle them.
>>> >>
>>> >> On Wed, Aug 5, 2015 at 5:08 PM, Dmitry Kan <solrexp...@gmail.com>
>>> wrote:
>>> >> > Hello,
>>> >> >
>>> >> > Solr: 5.2.1
>>> >> > class: org.apache.solr.common.util.JavaBinCodec
>>> >> >
>>> >> > I'm working on a custom data structure for the highlighter. The data
>>> >> > structure is ready in JSON and XML formats. I need also JavaBin
>>> format.
>>> >> The
>>> >> > data structure is already made serializable by extending the
>>> >> WritableValue
>>> >> > class (methods write and resolve).
>>> >> >
>>> >> > To receive the custom format on the client via solrj api, the data
>>> >> > structure needs to be parseable by JavaBinCodec. Is this correct
>>> >> > assumption? Can we introduce the custom data structure consumer on the
>>> >> > solrj api without complete overhaul of the api? Is there plugin
>>> framework
>>> >> > such that JavaBinCodec is extended and used for the new data
>>> structure?
>>> >> >
>>> >> >
>>> >> >
>>> >> > --
>>> >> > Dmitry Kan
>>> >> > Luke Toolbox: http://github.com/DmitryKey/luke
>>> >> > Blog: http://dmitrykan.blogspot.com
>>> >> > Twitter: http://twitter.com/dmitrykan
>>> >> > SemanticAnalyzer: www.semanticanalyzer.info
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> Regards,
>>> >> Shalin Shekhar Mangar.
>>> >>
>>> >
>>> >
>>> >
>>> > --
>>> > Dmitry Kan
>>> > Luke Toolbox: http://github.com/DmitryKey/luke
>>> > Blog: http://dmitrykan.blogspot.com
>>> > Twitter: http://twitter.com/dmitrykan
>>> > SemanticAnalyzer: www.semanticanalyzer.info
>>>
>>>
>>>
>>> --
>>> Regards,
>>> Shalin Shekhar Mangar.
>>>
>>
>>
>>
>> --
>> Dmitry Kan
>> Luke Toolbox: http://github.com/DmitryKey/luke
>> Blog: http://dmitrykan.blogspot.com
>> Twitter: http://twitter.com/dmitrykan
>> SemanticAnalyzer: www.semanticanalyzer.info
>
>
>
> --
> Regards,
> Shalin Shekhar Mangar.



-- 
Regards,
Shalin Shekhar Mangar.

Reply via email to