Added: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_atom.xsl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_atom.xsl?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_atom.xsl (added) +++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_atom.xsl Tue Oct 6 12:48:53 2015 @@ -0,0 +1,67 @@ +<?xml version='1.0' encoding='UTF-8'?> + +<!-- + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + --> + +<!-- + Simple transform of Solr query results to Atom + --> + +<xsl:stylesheet version='1.0' + xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> + + <xsl:output + method="xml" + encoding="utf-8" + media-type="application/xml" + /> + + <xsl:template match='/'> + <xsl:variable name="query" select="response/lst[@name='responseHeader']/lst[@name='params']/str[@name='q']"/> + <feed xmlns="http://www.w3.org/2005/Atom"> + <title>Example Solr Atom 1.0 Feed</title> + <subtitle> + This has been formatted by the sample "example_atom.xsl" transform - + use your own XSLT to get a nicer Atom feed. + </subtitle> + <author> + <name>Apache Solr</name> + <email>[hidden email]</email> + </author> + <link rel="self" type="application/atom+xml" + href="http://localhost:8983/solr/q={$query}&wt=xslt&tr=atom.xsl"/> + <updated> + <xsl:value-of select="response/result/doc[position()=1]/date[@name='timestamp']"/> + </updated> + <id>tag:localhost,2007:example</id> + <xsl:apply-templates select="response/result/doc"/> + </feed> + </xsl:template> + + <!-- search results xslt --> + <xsl:template match="doc"> + <xsl:variable name="id" select="str[@name='id']"/> + <entry> + <title><xsl:value-of select="str[@name='name']"/></title> + <link href="http://localhost:8983/solr/select?q={$id}"/> + <id>tag:localhost,2007:<xsl:value-of select="$id"/></id> + <summary><xsl:value-of select="arr[@name='features']"/></summary> + <updated><xsl:value-of select="date[@name='timestamp']"/></updated> + </entry> + </xsl:template> + +</xsl:stylesheet> Propchange: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_atom.xsl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_rss.xsl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_rss.xsl?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_rss.xsl (added) +++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_rss.xsl Tue Oct 6 12:48:53 2015 @@ -0,0 +1,66 @@ +<?xml version='1.0' encoding='UTF-8'?> + +<!-- + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + --> + +<!-- + Simple transform of Solr query results to RSS + --> + +<xsl:stylesheet version='1.0' + xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> + + <xsl:output + method="xml" + encoding="utf-8" + media-type="application/xml" + /> + <xsl:template match='/'> + <rss version="2.0"> + <channel> + <title>Example Solr RSS 2.0 Feed</title> + <link>http://localhost:8983/solr</link> + <description> + This has been formatted by the sample "example_rss.xsl" transform - + use your own XSLT to get a nicer RSS feed. + </description> + <language>en-us</language> + <docs>http://localhost:8983/solr</docs> + <xsl:apply-templates select="response/result/doc"/> + </channel> + </rss> + </xsl:template> + + <!-- search results xslt --> + <xsl:template match="doc"> + <xsl:variable name="id" select="str[@name='id']"/> + <xsl:variable name="timestamp" select="date[@name='timestamp']"/> + <item> + <title><xsl:value-of select="str[@name='name']"/></title> + <link> + http://localhost:8983/solr/select?q=id:<xsl:value-of select="$id"/> + </link> + <description> + <xsl:value-of select="arr[@name='features']"/> + </description> + <pubDate><xsl:value-of select="$timestamp"/></pubDate> + <guid> + http://localhost:8983/solr/select?q=id:<xsl:value-of select="$id"/> + </guid> + </item> + </xsl:template> +</xsl:stylesheet> Propchange: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/example_rss.xsl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/luke.xsl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/luke.xsl?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/luke.xsl (added) +++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/luke.xsl Tue Oct 6 12:48:53 2015 @@ -0,0 +1,337 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + + +<!-- + Display the luke request handler with graphs + --> +<xsl:stylesheet + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns="http://www.w3.org/1999/xhtml" + version="1.0" + > + <xsl:output + method="html" + encoding="UTF-8" + media-type="text/html" + doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" + /> + + <xsl:variable name="title">Solr Luke Request Handler Response</xsl:variable> + + <xsl:template match="/"> + <html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <link rel="stylesheet" type="text/css" href="solr-admin.css"/> + <link rel="icon" href="favicon.ico" type="image/x-icon"/> + <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"/> + <title> + <xsl:value-of select="$title"/> + </title> + <xsl:call-template name="css"/> + + </head> + <body> + <h1> + <xsl:value-of select="$title"/> + </h1> + <div class="doc"> + <ul> + <xsl:if test="response/lst[@name='index']"> + <li> + <a href="#index">Index Statistics</a> + </li> + </xsl:if> + <xsl:if test="response/lst[@name='fields']"> + <li> + <a href="#fields">Field Statistics</a> + <ul> + <xsl:for-each select="response/lst[@name='fields']/lst"> + <li> + <a href="#{@name}"> + <xsl:value-of select="@name"/> + </a> + </li> + </xsl:for-each> + </ul> + </li> + </xsl:if> + <xsl:if test="response/lst[@name='doc']"> + <li> + <a href="#doc">Document statistics</a> + </li> + </xsl:if> + </ul> + </div> + <xsl:if test="response/lst[@name='index']"> + <h2><a name="index"/>Index Statistics</h2> + <xsl:apply-templates select="response/lst[@name='index']"/> + </xsl:if> + <xsl:if test="response/lst[@name='fields']"> + <h2><a name="fields"/>Field Statistics</h2> + <xsl:apply-templates select="response/lst[@name='fields']"/> + </xsl:if> + <xsl:if test="response/lst[@name='doc']"> + <h2><a name="doc"/>Document statistics</h2> + <xsl:apply-templates select="response/lst[@name='doc']"/> + </xsl:if> + </body> + </html> + </xsl:template> + + <xsl:template match="lst"> + <xsl:if test="parent::lst"> + <tr> + <td colspan="2"> + <div class="doc"> + <xsl:call-template name="list"/> + </div> + </td> + </tr> + </xsl:if> + <xsl:if test="not(parent::lst)"> + <div class="doc"> + <xsl:call-template name="list"/> + </div> + </xsl:if> + </xsl:template> + + <xsl:template name="list"> + <xsl:if test="count(child::*)>0"> + <table> + <thead> + <tr> + <th colspan="2"> + <p> + <a name="{@name}"/> + </p> + <xsl:value-of select="@name"/> + </th> + </tr> + </thead> + <tbody> + <xsl:choose> + <xsl:when + test="@name='histogram'"> + <tr> + <td colspan="2"> + <xsl:call-template name="histogram"/> + </td> + </tr> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates/> + </xsl:otherwise> + </xsl:choose> + </tbody> + </table> + </xsl:if> + </xsl:template> + + <xsl:template name="histogram"> + <div class="doc"> + <xsl:call-template name="barchart"> + <xsl:with-param name="max_bar_width">50</xsl:with-param> + <xsl:with-param name="iwidth">800</xsl:with-param> + <xsl:with-param name="iheight">160</xsl:with-param> + <xsl:with-param name="fill">blue</xsl:with-param> + </xsl:call-template> + </div> + </xsl:template> + + <xsl:template name="barchart"> + <xsl:param name="max_bar_width"/> + <xsl:param name="iwidth"/> + <xsl:param name="iheight"/> + <xsl:param name="fill"/> + <xsl:variable name="max"> + <xsl:for-each select="int"> + <xsl:sort data-type="number" order="descending"/> + <xsl:if test="position()=1"> + <xsl:value-of select="."/> + </xsl:if> + </xsl:for-each> + </xsl:variable> + <xsl:variable name="bars"> + <xsl:value-of select="count(int)"/> + </xsl:variable> + <xsl:variable name="bar_width"> + <xsl:choose> + <xsl:when test="$max_bar_width < ($iwidth div $bars)"> + <xsl:value-of select="$max_bar_width"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$iwidth div $bars"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <table class="histogram"> + <tbody> + <tr> + <xsl:for-each select="int"> + <td> + <xsl:value-of select="."/> + <div class="histogram"> + <xsl:attribute name="style">background-color: <xsl:value-of select="$fill"/>; width: <xsl:value-of select="$bar_width"/>px; height: <xsl:value-of select="($iheight*number(.)) div $max"/>px;</xsl:attribute> + </div> + </td> + </xsl:for-each> + </tr> + <tr> + <xsl:for-each select="int"> + <td> + <xsl:value-of select="@name"/> + </td> + </xsl:for-each> + </tr> + </tbody> + </table> + </xsl:template> + + <xsl:template name="keyvalue"> + <xsl:choose> + <xsl:when test="@name"> + <tr> + <td class="name"> + <xsl:value-of select="@name"/> + </td> + <td class="value"> + <xsl:value-of select="."/> + </td> + </tr> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="."/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <xsl:template match="int|bool|long|float|double|uuid|date"> + <xsl:call-template name="keyvalue"/> + </xsl:template> + + <xsl:template match="arr"> + <tr> + <td class="name"> + <xsl:value-of select="@name"/> + </td> + <td class="value"> + <ul> + <xsl:for-each select="child::*"> + <li> + <xsl:apply-templates/> + </li> + </xsl:for-each> + </ul> + </td> + </tr> + </xsl:template> + + <xsl:template match="str"> + <xsl:choose> + <xsl:when test="@name='schema' or @name='index' or @name='flags'"> + <xsl:call-template name="schema"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="keyvalue"/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <xsl:template name="schema"> + <tr> + <td class="name"> + <xsl:value-of select="@name"/> + </td> + <td class="value"> + <xsl:if test="contains(.,'unstored')"> + <xsl:value-of select="."/> + </xsl:if> + <xsl:if test="not(contains(.,'unstored'))"> + <xsl:call-template name="infochar2string"> + <xsl:with-param name="charList"> + <xsl:value-of select="."/> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </td> + </tr> + </xsl:template> + + <xsl:template name="infochar2string"> + <xsl:param name="i">1</xsl:param> + <xsl:param name="charList"/> + + <xsl:variable name="char"> + <xsl:value-of select="substring($charList,$i,1)"/> + </xsl:variable> + <xsl:choose> + <xsl:when test="$char='I'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='I']"/> - </xsl:when> + <xsl:when test="$char='T'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='T']"/> - </xsl:when> + <xsl:when test="$char='S'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='S']"/> - </xsl:when> + <xsl:when test="$char='M'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='M']"/> - </xsl:when> + <xsl:when test="$char='V'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='V']"/> - </xsl:when> + <xsl:when test="$char='o'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='o']"/> - </xsl:when> + <xsl:when test="$char='p'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='p']"/> - </xsl:when> + <xsl:when test="$char='O'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='O']"/> - </xsl:when> + <xsl:when test="$char='L'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='L']"/> - </xsl:when> + <xsl:when test="$char='B'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='B']"/> - </xsl:when> + <xsl:when test="$char='C'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='C']"/> - </xsl:when> + <xsl:when test="$char='f'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='f']"/> - </xsl:when> + <xsl:when test="$char='l'"> + <xsl:value-of select="/response/lst[@name='info']/lst/str[@name='l']"/> - + </xsl:when> + </xsl:choose> + + <xsl:if test="not($i>=string-length($charList))"> + <xsl:call-template name="infochar2string"> + <xsl:with-param name="i"> + <xsl:value-of select="$i+1"/> + </xsl:with-param> + <xsl:with-param name="charList"> + <xsl:value-of select="$charList"/> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:template> + <xsl:template name="css"> + <style type="text/css"> + <![CDATA[ + td.name {font-style: italic; font-size:80%; } + .doc { margin: 0.5em; border: solid grey 1px; } + .exp { display: none; font-family: monospace; white-space: pre; } + div.histogram { background: none repeat scroll 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;} + table.histogram { width: auto; vertical-align: bottom; } + table.histogram td, table.histogram th { text-align: center; vertical-align: bottom; border-bottom: 1px solid #ff9933; width: auto; } + ]]> + </style> + </xsl:template> +</xsl:stylesheet> Propchange: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/luke.xsl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/updateXml.xsl URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/updateXml.xsl?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/updateXml.xsl (added) +++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/updateXml.xsl Tue Oct 6 12:48:53 2015 @@ -0,0 +1,70 @@ +<!-- + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + --> + +<!-- + Simple transform of Solr query response into Solr Update XML compliant XML. + When used in the xslt response writer you will get UpdaateXML as output. + But you can also store a query response XML to disk and feed this XML to + the XSLTUpdateRequestHandler to index the content. Provided as example only. + See http://wiki.apache.org/solr/XsltUpdateRequestHandler for more info + --> +<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> + <xsl:output media-type="text/xml" method="xml" indent="yes"/> + + <xsl:template match='/'> + <add> + <xsl:apply-templates select="response/result/doc"/> + </add> + </xsl:template> + + <!-- Ignore score (makes no sense to index) --> + <xsl:template match="doc/*[@name='score']" priority="100"> + </xsl:template> + + <xsl:template match="doc"> + <xsl:variable name="pos" select="position()"/> + <doc> + <xsl:apply-templates> + <xsl:with-param name="pos"><xsl:value-of select="$pos"/></xsl:with-param> + </xsl:apply-templates> + </doc> + </xsl:template> + + <!-- Flatten arrays to duplicate field lines --> + <xsl:template match="doc/arr" priority="100"> + <xsl:variable name="fn" select="@name"/> + + <xsl:for-each select="*"> + <xsl:element name="field"> + <xsl:attribute name="name"><xsl:value-of select="$fn"/></xsl:attribute> + <xsl:value-of select="."/> + </xsl:element> + </xsl:for-each> + </xsl:template> + + + <xsl:template match="doc/*"> + <xsl:variable name="fn" select="@name"/> + + <xsl:element name="field"> + <xsl:attribute name="name"><xsl:value-of select="$fn"/></xsl:attribute> + <xsl:value-of select="."/> + </xsl:element> + </xsl:template> + + <xsl:template match="*"/> +</xsl:stylesheet> Propchange: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/xslt/updateXml.xsl ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/solr/home/solrdefault/core.properties URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/core.properties?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/home/solrdefault/core.properties (added) +++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/core.properties Tue Oct 6 12:48:53 2015 @@ -0,0 +1,2 @@ +# To config this file, please read: +# https://cwiki.apache.org/confluence/display/solr/Defining+core.properties Propchange: ofbiz/trunk/specialpurpose/solr/home/solrdefault/core.properties ------------------------------------------------------------------------------ svn:mime-type = text/plain Added: ofbiz/trunk/specialpurpose/solr/home/solrdefault/runtime/indexes/tlog/tlog.0000000000000000000 URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/runtime/indexes/tlog/tlog.0000000000000000000?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/home/solrdefault/runtime/indexes/tlog/tlog.0000000000000000000 ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/home/zoo.cfg URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/zoo.cfg?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/home/zoo.cfg (added) +++ ofbiz/trunk/specialpurpose/solr/home/zoo.cfg Tue Oct 6 12:48:53 2015 @@ -0,0 +1,17 @@ +# The number of milliseconds of each tick +tickTime=2000 +# The number of ticks that the initial +# synchronization phase can take +initLimit=10 +# The number of ticks that can pass between +# sending a request and getting an acknowledgement +syncLimit=5 + +# the directory where the snapshot is stored. +# dataDir=/opt/zookeeper/data +# NOTE: Solr defaults the dataDir to <solrHome>/zoo_data + +# the port at which the clients will connect +# clientPort=2181 +# NOTE: Solr sets this based on zkRun / zkHost params + Added: ofbiz/trunk/specialpurpose/solr/lib/compile/solr-core-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/compile/solr-core-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/compile/solr-core-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/compile/solr-solrj-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/compile/solr-solrj-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/compile/solr-solrj-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-codecs-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-codecs-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-codecs-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-highlighter-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-highlighter-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-highlighter-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-join-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-join-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-join-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-misc-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-misc-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-misc-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-queries-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-queries-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-queries-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-spatial-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-spatial-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-spatial-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-suggest-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-suggest-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/lucene-suggest-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/noggit-0.6.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/noggit-0.6.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/noggit-0.6.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/org.restlet-2.3.0.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/org.restlet-2.3.0.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/org.restlet-2.3.0.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/lib/runtime/org.restlet.ext.servlet-2.3.0.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/lib/runtime/org.restlet.ext.servlet-2.3.0.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/lib/runtime/org.restlet.ext.servlet-2.3.0.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Modified: ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrProductSearch.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrProductSearch.java?rev=1707042&r1=1707041&r2=1707042&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrProductSearch.java (original) +++ ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrProductSearch.java Tue Oct 6 12:48:53 2015 @@ -35,7 +35,7 @@ import javolution.util.FastMap; import org.apache.commons.lang.StringUtils; import org.apache.solr.client.solrj.SolrQuery; import org.apache.solr.client.solrj.SolrServerException; -import org.apache.solr.client.solrj.impl.HttpSolrServer; +import org.apache.solr.client.solrj.impl.HttpSolrClient; import org.apache.solr.client.solrj.response.FacetField; import org.apache.solr.client.solrj.response.FacetField.Count; import org.apache.solr.client.solrj.response.QueryResponse; @@ -112,7 +112,7 @@ public abstract class SolrProductSearch * Adds product to solr index. */ public static Map<String, Object> addToSolrIndex(DispatchContext dctx, Map<String, Object> context) throws GenericEntityException { - HttpSolrServer server = null; + HttpSolrClient client = null; Map<String, Object> result; String productId = (String) context.get("productId"); // connectErrorNonFatal is a necessary option because in some cases it may be considered normal that solr server is unavailable; @@ -121,7 +121,7 @@ public abstract class SolrProductSearch try { Debug.logInfo("Solr: Generating and indexing document for productId '" + productId + "'", module); - server = new HttpSolrServer(SolrUtil.solrUrl); + client = new HttpSolrClient(SolrUtil.solrUrl); //Debug.log(server.ping().toString()); // Construct Documents @@ -135,8 +135,8 @@ public abstract class SolrProductSearch docs.add(doc1); // push Documents to server - server.add(docs); - server.commit(); + client.add(docs); + client.commit(); final String statusStr = "Document for productId " + productId + " added to solr index"; Debug.logInfo("Solr: " + statusStr, module); @@ -168,6 +168,14 @@ public abstract class SolrProductSearch Debug.logError(e, e.getMessage(), module); result = ServiceUtil.returnError(e.toString()); result.put("errorType", "ioError"); + } finally { + if (client != null) { + try { + client.close(); + } catch (IOException e) { + // do nothing + } + } } return result; } @@ -178,7 +186,7 @@ public abstract class SolrProductSearch * This is faster than reflushing the index each time. */ public static Map<String, Object> addListToSolrIndex(DispatchContext dctx, Map<String, Object> context) throws GenericEntityException { - HttpSolrServer server = null; + HttpSolrClient client = null; Map<String, Object> result; Boolean treatConnectErrorNonFatal = (Boolean) context.get("treatConnectErrorNonFatal"); try { @@ -197,9 +205,9 @@ public abstract class SolrProductSearch docs.add(doc1); } // push Documents to server - server = new HttpSolrServer(SolrUtil.solrUrl); - server.add(docs); - server.commit(); + client = new HttpSolrClient(SolrUtil.solrUrl); + client.add(docs); + client.commit(); final String statusStr = "Added " + fieldList.size() + " documents to solr index"; Debug.logInfo("Solr: " + statusStr, module); @@ -230,6 +238,14 @@ public abstract class SolrProductSearch Debug.logError(e, e.getMessage(), module); result = ServiceUtil.returnError(e.toString()); result.put("errorType", "ioError"); + } finally { + if (client != null) { + try { + client.close(); + } catch (IOException e) { + // do nothing + } + } } return result; } @@ -242,10 +258,10 @@ public abstract class SolrProductSearch */ public static Map<String, Object> runSolrQuery(DispatchContext dctx, Map<String, Object> context) { // get Connection - HttpSolrServer server = null; + HttpSolrClient client = null; Map<String, Object> result; try { - server = new HttpSolrServer(SolrUtil.solrUrl); + client = new HttpSolrClient(SolrUtil.solrUrl); // create Query Object SolrQuery solrQuery = new SolrQuery(); solrQuery.setQuery((String) context.get("query")); @@ -324,12 +340,20 @@ public abstract class SolrProductSearch solrQuery.addFacetQuery((String) context.get("facetQuery")); } - QueryResponse rsp = server.query(solrQuery); + QueryResponse rsp = client.query(solrQuery); result = ServiceUtil.returnSuccess(); result.put("queryResult", rsp); } catch (Exception e) { Debug.logError(e, e.getMessage(), module); result = ServiceUtil.returnError(e.toString()); + } finally { + if (client != null) { + try { + client.close(); + } catch (IOException e) { + // do nothing + } + } } return result; } @@ -584,7 +608,7 @@ public abstract class SolrProductSearch * Rebuilds the solr index. */ public static Map<String, Object> rebuildSolrIndex(DispatchContext dctx, Map<String, Object> context) throws GenericEntityException { - HttpSolrServer server = null; + HttpSolrClient client = null; Map<String, Object> result; GenericDelegator delegator = (GenericDelegator) dctx.getDelegator(); LocalDispatcher dispatcher = dctx.getDispatcher(); @@ -594,7 +618,7 @@ public abstract class SolrProductSearch Boolean treatConnectErrorNonFatal = (Boolean) context.get("treatConnectErrorNonFatal"); try { - server = new HttpSolrServer(SolrUtil.solrUrl); + client = new HttpSolrClient(SolrUtil.solrUrl); // now lets fetch all products List<Map<String, Object>> solrDocs = FastList.newInstance(); @@ -614,8 +638,8 @@ public abstract class SolrProductSearch } // this removes everything from the index - server.deleteByQuery("*:*"); - server.commit(); + client.deleteByQuery("*:*"); + client.commit(); // THis adds all products to the Index (instantly) Map<String, Object> runResult = dispatcher.runSync("addListToSolrIndex", UtilMisc.toMap("fieldList", solrDocs, "userLogin", userLogin, @@ -669,6 +693,14 @@ public abstract class SolrProductSearch } catch (Exception e) { Debug.logError(e, e.getMessage(), module); result = ServiceUtil.returnError(e.toString()); + } finally { + if (client != null) { + try { + client.close(); + } catch (IOException e) { + // do nothing + } + } } return result; } Modified: ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java?rev=1707042&r1=1707041&r2=1707042&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java (original) +++ ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java Tue Oct 6 12:48:53 2015 @@ -27,7 +27,7 @@ import javolution.util.FastMap; import org.apache.solr.client.solrj.SolrQuery; import org.apache.solr.client.solrj.SolrRequest.METHOD; -import org.apache.solr.client.solrj.impl.HttpSolrServer; +import org.apache.solr.client.solrj.impl.HttpSolrClient; import org.apache.solr.client.solrj.response.QueryResponse; import org.apache.solr.common.SolrInputDocument; import org.ofbiz.base.component.ComponentConfig; @@ -189,11 +189,11 @@ public abstract class SolrUtil { public static Map<String, Object> categoriesAvailable(String catalogId, String categoryId, String productId, String facetPrefix, boolean displayproducts, int viewIndex, int viewSize) { // create the data model Map<String, Object> result = FastMap.newInstance(); - HttpSolrServer server = null; + HttpSolrClient client = null; QueryResponse returnMap = new QueryResponse(); try { // do the basic query - server = new HttpSolrServer(solrUrl); + client = new HttpSolrClient(solrUrl); // create Query Object String query = "inStock[1 TO *]"; if (categoryId != null) @@ -227,7 +227,7 @@ public abstract class SolrUtil { solrQuery.addFacetField("cat"); solrQuery.setFacetLimit(-1); Debug.logVerbose("solr: solrQuery: " + solrQuery, module); - returnMap = server.query(solrQuery, METHOD.POST); + returnMap = client.query(solrQuery, METHOD.POST); result.put("rows", returnMap); result.put("numFound", returnMap.getResults().getNumFound()); } catch (Exception e) { Modified: ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrContextFilter.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrContextFilter.java?rev=1707042&r1=1707041&r2=1707042&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrContextFilter.java (original) +++ ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrContextFilter.java Tue Oct 6 12:48:53 2015 @@ -27,6 +27,7 @@ import java.util.Enumeration; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Properties; import java.util.Set; import javax.servlet.FilterChain; @@ -39,9 +40,9 @@ import javax.servlet.http.HttpServletReq import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; -import org.apache.solr.core.ConfigSolr; +import org.apache.solr.core.NodeConfig; +import org.apache.solr.common.SolrException; import org.apache.solr.core.CoreContainer; -import org.apache.solr.core.SolrResourceLoader; import org.apache.solr.servlet.SolrDispatchFilter; import org.ofbiz.base.conversion.ConversionException; import org.ofbiz.base.conversion.JSONConverters.MapToJSON; @@ -179,7 +180,8 @@ public class OFBizSolrContextFilter exte } else { // check if the request is from an authorized user if (UtilValidate.isNotEmpty(servletPath) && (servletPath.startsWith("/admin/") || servletPath.endsWith("/update") - || servletPath.endsWith("/update/json") || servletPath.endsWith("/update/csv") || servletPath.endsWith("/update/extract"))) { + || servletPath.endsWith("/update/json") || servletPath.endsWith("/update/csv") || servletPath.endsWith("/update/extract") + || servletPath.endsWith("/replication") || servletPath.endsWith("/file") || servletPath.endsWith("/file/"))) { HttpSession session = httpRequest.getSession(); GenericValue userLogin = (GenericValue) session.getAttribute("userLogin"); Security security = (Security) request.getAttribute("security"); @@ -199,9 +201,10 @@ public class OFBizSolrContextFilter exte response.setContentType("application/json"); MapToJSON mapToJson = new MapToJSON(); JSON json; + OutputStream os = null; try { json = mapToJson.convert(UtilMisc.toMap("ofbizLogin", (Object) "true")); - OutputStream os = response.getOutputStream(); + os = response.getOutputStream(); os.write(json.toString().getBytes()); os.flush(); String message = ""; @@ -213,6 +216,10 @@ public class OFBizSolrContextFilter exte Debug.logInfo("[" + httpRequest.getRequestURI().substring(1) + "(Domain:" + request.getScheme() + "://" + request.getServerName() + ")] Request error: " + message, module); } catch (ConversionException e) { Debug.logError("Error while converting Solr ofbizLogin map to JSON.", module); + } finally { + if (os != null) { + os.close(); + } } return; } else if (servletPath.endsWith("/update") || servletPath.endsWith("/update/json") || servletPath.endsWith("/update/csv") || servletPath.endsWith("/update/extract")) { @@ -224,8 +231,9 @@ public class OFBizSolrContextFilter exte Map<String, Object> responseHeader = new HashMap<String, Object>(); JSON json; String message = ""; + OutputStream os = null; try { - OutputStream os = httpResponse.getOutputStream(); + os = httpResponse.getOutputStream(); if (UtilValidate.isEmpty(userLogin)) { httpResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED); responseHeader.put("status", HttpServletResponse.SC_UNAUTHORIZED); @@ -243,6 +251,80 @@ public class OFBizSolrContextFilter exte Debug.logInfo("[" + httpRequest.getRequestURI().substring(1) + "(Domain:" + request.getScheme() + "://" + request.getServerName() + ")] Request error: " + message, module); } catch (ConversionException e) { Debug.logError("Error while converting responseHeader map to JSON.", module); + } finally { + if (os != null) { + os.close(); + } + } + return; + } + } else if (servletPath.endsWith("/replication")) { + // get the Solr index name from the request + if (UtilValidate.isEmpty(userLogin) || !LoginWorker.hasBasePermission(userLogin, httpRequest)) { + httpResponse.setContentType("application/json"); + MapToJSON mapToJson = new MapToJSON(); + Map<String, Object> responseHeader = new HashMap<String, Object>(); + JSON json; + String message = ""; + OutputStream os = null; + try { + os = httpResponse.getOutputStream(); + if (UtilValidate.isEmpty(userLogin)) { + httpResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED); + responseHeader.put("status", HttpServletResponse.SC_UNAUTHORIZED); + message = "To enable/disable replication of a Solr index in OFBiz, you have to login first and have the permission to do so."; + responseHeader.put("message", message); + } else { + httpResponse.setStatus(HttpServletResponse.SC_FORBIDDEN); + responseHeader.put("status", HttpServletResponse.SC_FORBIDDEN); + message = "To enable/disable replication of a Solr index in OFBiz, you have to have the permission to do so."; + responseHeader.put("message", message); + } + json = mapToJson.convert(UtilMisc.toMap("responseHeader", (Object) responseHeader)); + os.write(json.toString().getBytes()); + os.flush(); + Debug.logInfo("[" + httpRequest.getRequestURI().substring(1) + "(Domain:" + request.getScheme() + "://" + request.getServerName() + ")] Request error: " + message, module); + } catch (ConversionException e) { + Debug.logError("Error while converting responseHeader map to JSON.", module); + } finally { + if (os != null) { + os.close(); + } + } + return; + } + } else if (servletPath.endsWith("/file") || servletPath.endsWith("/file/")) { + // get the Solr index name from the request + if (UtilValidate.isEmpty(userLogin) || !LoginWorker.hasBasePermission(userLogin, httpRequest)) { + httpResponse.setContentType("application/json"); + MapToJSON mapToJson = new MapToJSON(); + Map<String, Object> responseHeader = new HashMap<String, Object>(); + JSON json; + String message = ""; + OutputStream os = null; + try { + os = httpResponse.getOutputStream(); + if (UtilValidate.isEmpty(userLogin)) { + httpResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED); + responseHeader.put("status", HttpServletResponse.SC_UNAUTHORIZED); + message = "To view files of a Solr index in OFBiz, you have to login first and have the permission to do so."; + responseHeader.put("message", message); + } else { + httpResponse.setStatus(HttpServletResponse.SC_FORBIDDEN); + responseHeader.put("status", HttpServletResponse.SC_FORBIDDEN); + message = "To view files of a Solr index in OFBiz, you have to have the permission to do so."; + responseHeader.put("message", message); + } + json = mapToJson.convert(UtilMisc.toMap("responseHeader", (Object) responseHeader)); + os.write(json.toString().getBytes()); + os.flush(); + Debug.logInfo("[" + httpRequest.getRequestURI().substring(1) + "(Domain:" + request.getScheme() + "://" + request.getServerName() + ")] Request error: " + message, module); + } catch (ConversionException e) { + Debug.logError("Error while converting responseHeader map to JSON.", module); + } finally { + if (os != null) { + os.close(); + } } return; } @@ -561,10 +643,14 @@ public class OFBizSolrContextFilter exte * Override this to change CoreContainer initialization * @return a CoreContainer to hold this server's cores */ - protected CoreContainer createCoreContainer() { - SolrResourceLoader loader = new SolrResourceLoader("specialpurpose/solr/conf"); - ConfigSolr config = ConfigSolr.fromSolrHome(loader, loader.getInstanceDir()); - CoreContainer cores = new CoreContainer(loader, config); + protected CoreContainer createCoreContainer(String solrHome, Properties extraProperties) { + NodeConfig nodeConfig = null; + try { + nodeConfig = loadNodeConfig(solrHome, extraProperties); + } catch (SolrException e) { + nodeConfig = loadNodeConfig("specialpurpose/solr/home", extraProperties); + } + cores = new CoreContainer(nodeConfig, extraProperties, true); cores.load(); return cores; } Modified: ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrLoadAdminUiServlet.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrLoadAdminUiServlet.java?rev=1707042&r1=1707041&r2=1707042&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrLoadAdminUiServlet.java (original) +++ ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/webapp/OFBizSolrLoadAdminUiServlet.java Tue Oct 6 12:48:53 2015 @@ -30,6 +30,7 @@ import javax.servlet.http.HttpServletRes import org.apache.commons.io.IOUtils; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringEscapeUtils; +import org.apache.solr.common.params.CommonParams; import org.apache.solr.core.CoreContainer; import org.apache.solr.core.SolrCore; @@ -65,7 +66,7 @@ public class OFBizSolrLoadAdminUiServlet String[] search = new String[] { "${contextPath}", "${adminPath}", "${version}" }; String[] replace = new String[] { StringEscapeUtils.escapeJavaScript(request.getContextPath()), - StringEscapeUtils.escapeJavaScript(cores.getAdminPath()), + StringEscapeUtils.escapeJavaScript(CommonParams.CORES_HANDLER_PATH), StringEscapeUtils.escapeJavaScript(pack.getSpecificationVersion()) }; out.write(StringUtils.replaceEach(html, search, replace)); Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/commons-exec-1.3.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/commons-exec-1.3.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/commons-exec-1.3.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-annotations-2.6.0.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-annotations-2.6.0.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-annotations-2.6.0.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-auth-2.6.0.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-auth-2.6.0.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-auth-2.6.0.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-common-2.6.0.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-common-2.6.0.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-common-2.6.0.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-hdfs-2.6.0.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-hdfs-2.6.0.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/hadoop-hdfs-2.6.0.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/htrace-core-3.0.4.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/htrace-core-3.0.4.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/htrace-core-3.0.4.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/httpmime-4.4.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/httpmime-4.4.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/httpmime-4.4.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/jackson-core-2.5.4.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/jackson-core-2.5.4.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/jackson-core-2.5.4.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/jackson-dataformat-smile-2.5.4.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/jackson-dataformat-smile-2.5.4.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/jackson-dataformat-smile-2.5.4.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/joda-time-2.2.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/joda-time-2.2.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/joda-time-2.2.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-analyzers-kuromoji-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-analyzers-kuromoji-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-analyzers-kuromoji-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-analyzers-phonetic-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-analyzers-phonetic-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-analyzers-phonetic-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-backward-codecs-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-backward-codecs-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-backward-codecs-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-codecs-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-codecs-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-codecs-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-expressions-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-expressions-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-expressions-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-grouping-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-grouping-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-grouping-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-highlighter-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-highlighter-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-highlighter-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-join-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-join-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-join-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-memory-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-memory-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-memory-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-queries-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-queries-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-queries-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-sandbox-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-sandbox-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-sandbox-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-spatial-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-spatial-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-spatial-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-suggest-5.3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-suggest-5.3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/lucene-suggest-5.3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/stax2-api-3.1.4.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/stax2-api-3.1.4.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/stax2-api-3.1.4.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/t-digest-3.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/t-digest-3.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/t-digest-3.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/woodstox-core-asl-4.4.1.jar URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/woodstox-core-asl-4.4.1.jar?rev=1707042&view=auto ============================================================================== Binary file - no diff available. Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/lib/woodstox-core-asl-4.4.1.jar ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml?rev=1707042&r1=1707041&r2=1707042&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/WEB-INF/web.xml Tue Oct 6 12:48:53 2015 @@ -23,22 +23,22 @@ <context-param> <param-name>entityDelegatorName</param-name> <param-value>default</param-value> - <description>The Name of the Entity Delegator to use, defined in entityengine.xml</description> + <!-- The Name of the Entity Delegator to use, defined in entityengine.xml --> </context-param> <context-param> <param-name>localDispatcherName</param-name> <param-value>solr</param-value> - <description>A unique name used to identify/recognize the local dispatcher for the Service Engine</description> + <!-- A unique name used to identify/recognize the local dispatcher for the Service Engine --> </context-param> <context-param> <param-name>mainDecoratorLocation</param-name> <param-value>component://content/widget/CommonScreens.xml</param-value> - <description>The location of the main-decorator screen to use for this webapp; referred to as a context variable in screen def XML files.</description> + <!-- The location of the main-decorator screen to use for this webapp; referred to as a context variable in screen def XML files. --> </context-param> <context-param> <param-name>partyDecoratorLocation</param-name> <param-value>component://content/widget/CommonScreens.xml</param-value> - <description>The location of the CommonPartyDecorator screen to use for this webapp; referred to as a context variable in screen def XML files.</description> + <!-- The location of the CommonPartyDecorator screen to use for this webapp; referred to as a context variable in screen def XML files. --> </context-param> <filter> @@ -76,8 +76,7 @@ <servlet> <servlet-name>ControlServlet</servlet-name> - <display-name>ControlServlet</display-name> - <description>Main Control Servlet</description> + <!-- Main Control Servlet --> <servlet-class>org.ofbiz.webapp.control.ControlServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> @@ -139,15 +138,6 @@ </init-param> </servlet> - <servlet> - <servlet-name>SolrConfigRestApi</servlet-name> - <servlet-class>org.restlet.ext.servlet.ServerServlet</servlet-class> - <init-param> - <param-name>org.restlet.application</param-name> - <param-value>org.apache.solr.rest.SolrConfigRestApi</param-value> - </init-param> - </servlet> - <servlet-mapping> <servlet-name>RedirectOldAdminUI</servlet-name> <url-pattern>/admin/</url-pattern> @@ -180,13 +170,8 @@ <url-pattern>/schema/*</url-pattern> </servlet-mapping> - <servlet-mapping> - <servlet-name>SolrConfigRestApi</servlet-name> - <url-pattern>/config/*</url-pattern> - </servlet-mapping> - <session-config> - <session-timeout>60</session-timeout> + <session-timeout>2</session-timeout> </session-config> <mime-mapping> Modified: ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html?rev=1707042&r1=1707041&r2=1707042&view=diff ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html (original) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/admin.html Tue Oct 6 12:48:53 2015 @@ -22,7 +22,8 @@ limitations under the License. <title>Solr Admin</title> - <link rel="icon" type="image/ico" href="img/favicon.ico?_=${version}"> + <link rel="icon" type="image/x-icon" href="img/favicon.ico?_=${version}"> + <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico?_=${version}"> <link rel="stylesheet" type="text/css" href="css/styles/common.css?_=${version}"> <link rel="stylesheet" type="text/css" href="css/styles/analysis.css?_=${version}"> @@ -41,6 +42,7 @@ limitations under the License. <link rel="stylesheet" type="text/css" href="css/styles/replication.css?_=${version}"> <link rel="stylesheet" type="text/css" href="css/styles/schema-browser.css?_=${version}"> <link rel="stylesheet" type="text/css" href="css/styles/threads.css?_=${version}"> + <link rel="stylesheet" type="text/css" href="css/styles/segments.css?_=${version}"> <link rel="stylesheet" type="text/css" href="css/chosen.css?_=${version}"> <meta http-equiv="x-ua-compatible" content="IE=9"> @@ -135,11 +137,11 @@ limitations under the License. <ul> - <li class="documentation"><a href="http://lucene.apache.org/solr/" target="_blank"><span>Documentation</span></a></li> - <li class="issues"><a href="http://issues.apache.org/jira/browse/SOLR" target="_blank"><span>Issue Tracker</span></a></li> - <li class="irc"><a href="http://webchat.freenode.net/?channels=#solr" target="_blank"><span>IRC Channel</span></a></li> - <li class="mailinglist"><a href="http://wiki.apache.org/solr/UsingMailingLists" target="_blank"><span>Community forum</span></a></li> - <li class="wiki-query-syntax"><a href="http://wiki.apache.org/solr/SolrQuerySyntax" target="_blank"><span>Solr Query Syntax</span></a></li> + <li class="documentation"><a href="http://lucene.apache.org/solr/"><span>Documentation</span></a></li> + <li class="issues"><a href="http://issues.apache.org/jira/browse/SOLR"><span>Issue Tracker</span></a></li> + <li class="irc"><a href="https://wiki.apache.org/solr/IRCChannels"><span>IRC Channel</span></a></li> + <li class="mailinglist"><a href="http://lucene.apache.org/solr/resources.html#community"><span>Community forum</span></a></li> + <li class="wiki-query-syntax"><a href="https://cwiki.apache.org/confluence/display/solr/Query+Syntax+and+Parsing"><span>Solr Query Syntax</span></a></li> </ul> Added: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/analysis.css URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/analysis.css?rev=1707042&view=auto ============================================================================== --- ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/analysis.css (added) +++ ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/analysis.css Tue Oct 6 12:48:53 2015 @@ -0,0 +1,304 @@ +/* + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +*/ + +#content #analysis-holder +{ + background-image: url( ../../img/div.gif ); + background-position: 50% 0; + background-repeat: repeat-y; +} + +#content #analysis #field-analysis +{ + margin-bottom: 0; +} + +#content #analysis #field-analysis .content +{ + padding-bottom: 0; +} + +#content #analysis .settings-holder +{ + clear: both; + padding-top: 15px; +} + +#content #analysis .settings +{ + background-color: #fff; + border-top: 1px solid #fafafa; + border-bottom: 1px solid #fafafa; + padding-top: 10px; + padding-bottom: 10px; +} + +#content #analysis .settings select.loader +{ + background-position: 3px 50%; + padding-left: 21px; +} + +#content #analysis .settings select optgroup +{ + font-style: normal; + padding: 5px; +} + +#content #analysis .settings select option +{ + padding-left: 10px; +} + +#content #analysis .settings #tor_schema +{ + background-image: url( ../../img/ico/question-white.png ); + background-position: 0 50%; + color: #c0c0c0; + margin-left: 5px; + padding-left: 21px; +} + +#content #analysis .settings #tor_schema:hover +{ + background-image: url( ../../img/ico/question.png ); +} + +#content #analysis .settings #tor_schema span +{ +// display: none; +} + +#content #analysis .settings #tor_schema:hover span +{ + display: inline; +} + +#content #analysis .settings .buttons +{ + float: right; + width: 47%; +} + +#content #analysis .settings button +{ + float: right; +} + +#content #analysis .settings button span +{ + background-image: url( ../../img/ico/funnel.png ); +} + +#content #analysis .settings .verbose_output +{ + float: left; + width: auto; +} + +#content #analysis .settings .verbose_output a +{ + background-image: url( ../../img/ico/ui-check-box-uncheck.png ); + background-position: 0 50%; + color: #999; + display: block; + padding-left: 21px; +} + +#content #analysis .settings .verbose_output.active a +{ + background-image: url( ../../img/ico/ui-check-box.png ); +} + +#content #analysis .index label, +#content #analysis .query label +{ + display: block; +} + +#content #analysis .index textarea, +#content #analysis .query textarea +{ + display: block; + width: 100%; +} + +#content #analysis .index +{ + float: left; + margin-right: 0.5%; + min-width: 47%; + max-width: 99%; +} + +#content #analysis .query +{ + float: right; + margin-left: 0.5%; + min-width: 47%; + max-width: 99%; +} + +#content #analysis .analysis-error +{ + background-color: #f00; + background-image: url( ../../img/ico/construction.png ); + background-position: 10px 50%; + color: #fff; + font-weight: bold; + margin-bottom: 20px; + padding: 10px; + padding-left: 35px; +} + +#content #analysis .analysis-error .head a +{ + color: #fff; + cursor: auto; +} + +#content #analysis #analysis-result +{ + overflow: auto; +} + +#content #analysis #analysis-result .index, +#content #analysis #analysis-result .query +{ + background-color: #fff; + padding-top: 20px; +} + +#content #analysis #analysis-result table +{ + border-collapse: collapse; +} + +#content #analysis #analysis-result td +{ + vertical-align: top; + white-space: nowrap; +} + +#content #analysis #analysis-result td.part.analyzer div, +#content #analysis #analysis-result td.part.spacer .holder, +#content #analysis #analysis-result td td td +{ + padding-top: 1px; + padding-bottom: 1px; +} + +#content #analysis #analysis-result.verbose_output td.legend +{ + display: table-cell; +} + +#content #analysis #analysis-result.verbose_output td.data tr.verbose_output +{ + display: table-row; +} + +#content #analysis #analysis-result .match +{ + background-color: #e9eff7; + background-color: #f2f2ff; +} + +#content #analysis #analysis-result td.part +{ + padding-bottom: 10px; +} + +#content #analysis #analysis-result td.part.analyzer div +{ + border-right: 1px solid #f0f0f0; + padding-right: 10px; +} + +#content #analysis #analysis-result td.part.analyzer abbr +{ + color: #c0c0c0; +} + +#content #analysis #analysis-result td.part.legend .holder, +#content #analysis #analysis-result td.part.data .holder +{ + padding-left: 10px; + padding-right: 10px; + border-right: 1px solid #c0c0c0; +} + +#content #analysis #analysis-result td.part.legend td +{ + color: #c0c0c0; +} + +#content #analysis #analysis-result td.part.legend .holder +{ + border-right-color: #f0f0f0; +} + +#content #analysis #analysis-result td.part.data:last-child .holder +{ + padding-right: 0; + border-right: 0; +} + +#content #analysis #analysis-result td.details +{ + padding-left: 10px; + padding-right: 10px; + border-left: 1px solid #f0f0f0; + border-right: 1px solid #f0f0f0; +} + +#content #analysis #analysis-result td.details:first-child +{ + padding-left: 0; + border-left: 0; +} + +#content #analysis #analysis-result td.details:last-child +{ + padding-right: 0; + border-right: 0; +} + +#content #analysis #analysis-result td.details tr.empty td +{ + color: #f0f0f0; +} + +#content #analysis #analysis-result td.details tr.raw_bytes td +{ + letter-spacing: -1px; +} + +#content #analysis #analysis-result .part table table td +{ + border-top: 1px solid #f0f0f0; +} + +#content #analysis #analysis-result .part table table tr:first-child td +{ + border-top: 0; +} + +#content #analysis #field-analysis h2 { background-image: url( ../../img/ico/receipt.png ); } +#content #analysis .analysis-result h2 { background-image: url( ../../img/ico/receipt-invoice.png ); } Propchange: ofbiz/trunk/specialpurpose/solr/webapp/solr/css/angular/analysis.css ------------------------------------------------------------------------------ svn:mime-type = text/plain |
Free forum by Nabble | Edit this page |