[ https://issues.apache.org/jira/browse/SOLR-807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12640057#action_12640057 ]
Noble Paul commented on SOLR-807: --------------------------------- bq. Change which code? NamedListCodec bq.while the NameListCodec seems to make it's own decisions based on FieldType.toObject.. you are right. NamedListCodec needs to handle Objects differently because , that is the only way it can write out values efficiently. There are two ways to address the issue. * Make UUID a known type . I mean add a new type to NamedListCodec. This means bumping up the version of javabin format say version=2. I guess we should not make this change unless we wish to make some more important changes. * Write down UUID as a String and treat it like String (of course w/o the classname). XMLWriter is anyway doing this . This change will be backward compatible and we may not need to bump up the version. > UUIDField type cannot be recognized when wt=javabin is used > ----------------------------------------------------------- > > Key: SOLR-807 > URL: https://issues.apache.org/jira/browse/SOLR-807 > Project: Solr > Issue Type: Bug > Components: clients - java, search > Affects Versions: 1.3 > Reporter: Koji Sekiguchi > Priority: Trivial > Fix For: 1.3.1 > > > I'm using UUID via Solrj in my project. When I use javabin (default), I got: > *java.util.UUID:* 391e3214-4f8e-4abd-aa6b-4f12be79534f > as the uuid value. But if I use xml, I got: > 391e3214-4f8e-4abd-aa6b-4f12be79534f > I think the both of them should return same string. > program for reproducing the problem: > {code:java} > public static void main(String[] args) throws Exception { > CommonsHttpSolrServer server = new CommonsHttpSolrServer( > "http://localhost:8983/solr" ); > SolrQuery query = new SolrQuery().setQuery( "*:*" ); > //server.setParser( new XMLResponseParser() ); // uncomment for wt=xml > System.out.println( "===== " + > server.getParser().getClass().getSimpleName() + " =====" ); > QueryResponse rsp = server.query( query ); > SolrDocumentList docs = rsp.getResults(); > for( SolrDocument doc : docs ){ > Object id = doc.getFieldValue( "id" ); > System.out.println( "type = " + id.getClass().getName() + ", id = " + > id ); > Object timestamp = doc.getFieldValue( "timestamp" ); > System.out.println( "type = " + timestamp.getClass().getName() + ", > timestamp = " + timestamp ); > } > } > {code} > result for wt=javabin > {code:title=javabin} > ===== BinaryResponseParser ===== > type = java.lang.String, id = > java.util.UUID:391e3214-4f8e-4abd-aa6b-4f12be79534f > type = java.util.Date, timestamp = Wed Oct 15 00:20:50 JST 2008 > {code} > result for wt=xml > {code:title=xml} > ===== XMLResponseParser ===== > type = java.lang.String, id = 391e3214-4f8e-4abd-aa6b-4f12be79534f > type = java.util.Date, timestamp = Wed Oct 15 00:20:50 JST 2008 > {code} -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.