You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by wi...@apache.org on 2013/02/19 13:52:00 UTC
[25/52] [partial] code contribution,
initial import of relevant modules of LMF-3.0.0-SNAPSHOT based on
revision 4bf944319368 of the default branch at https://code.google.com/p/lmf/
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/analysis.xsl
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/analysis.xsl b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/analysis.xsl
new file mode 100644
index 0000000..da30f98
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/analysis.xsl
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ -->
+
+<!-- $Id$ -->
+<!-- $URL$ -->
+
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+
+ <xsl:output
+ method="html"
+ indent="yes"
+ encoding="utf-8"
+ media-type="text/html"
+ doctype-public="-//W3C//DTD HTML 4.01//EN"
+ doctype-system="http://www.w3.org/TR/html4/strict.dtd" />
+
+ <xsl:template match="/">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="solr-admin.css"></link>
+ <link rel="icon" href="favicon.ico" type="image/ico"></link>
+ <link rel="shortcut icon" href="favicon.ico" type="image/ico"></link>
+ <title>Solr Info</title>
+ </head>
+ <body>
+ <a href="">
+ <img border="0" align="right" height="78" width="142" src="solr_small.png" alt="Apache Solr"/>
+ </a>
+ <h1>Solr Admin (<xsl:value-of select="solr/meta/collection" />)</h1>
+ <div style="margin-top: 1em;">
+ <h2>Field Analysis</h2>
+ <xsl:apply-templates/>
+ <a href=".">Return to Admin Page</a>
+ </div>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:include href="meta.xsl"/>
+
+ <xsl:template match="solr/analysis/form">
+ <form method="POST" action="analysis.jsp">
+ <table>
+ <tr>
+ <td>
+ <strong>Field name</strong>
+ </td>
+ <td>
+ <input class="std" name="name" type="text" value="{field}"/>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <strong>Field value (Index)</strong>
+ <br/>
+ verbose output <input name="verbose" type="checkbox" checked="true"/>
+ <br/>
+ highlight matches <input name="highlight" type="checkbox" checked="true"/>
+ </td>
+ <td>
+ <textarea class="std" rows="8" cols="70" name="val"><xsl:value-of select="fieldIndexValue" /></textarea>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <strong>Field value (Query)</strong>
+ <br/>
+ verbose output <input name="qverbose" type="checkbox" checked="true"/>
+ </td>
+ <td>
+ <textarea class="std" rows="1" cols="70" name="qval"><xsl:value-of select="fieldQueryValue" /></textarea>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ </td>
+ <td>
+ <input class="stdbutton" type="submit" value="analyze"/>
+ </td>
+ </tr>
+ </table>
+ </form>
+</xsl:template>
+
+<xsl:template match="solr/analysis/results/indexAnalyzer">
+ <h4>Index Analyzer</h4>
+ <xsl:for-each select="factory">
+ <h5 style="margin-left: 1em;"><xsl:apply-templates select="@class"/></h5>
+ <xsl:apply-templates/>
+ </xsl:for-each>
+</xsl:template>
+
+<xsl:template match="solr/analysis/results/indexAnalyzer/factory/args">
+ <div style="margin-left: 2em; font-weight: bold;">{
+ <xsl:for-each select="arg">
+ <xsl:apply-templates select="@name"/>=<xsl:value-of select="."/>,
+ </xsl:for-each>
+ }</div>
+</xsl:template>
+
+<xsl:template match="solr/analysis/results/indexAnalyzer/factory/tokens">
+<div style="margin-left: 2em;">
+ <table width="auto" class="analysis" border="1">
+ <tr>
+ <th>text</th>
+ <th>type</th>
+ <th>position</th>
+ <th>start</th>
+ <th>end</th>
+ </tr>
+ <xsl:for-each select="token">
+ <tr>
+ <td><xsl:value-of select="."/></td>
+ <td><xsl:apply-templates select="@type"/></td>
+ <td><xsl:apply-templates select="@pos"/></td>
+ <td><xsl:apply-templates select="@start"/></td>
+ <td><xsl:apply-templates select="@end"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+</div>
+</xsl:template>
+
+<xsl:template match="solr/analysis/results/queryAnalyzer">
+ <h4>Query Analyzer</h4>
+ <xsl:for-each select="factory">
+ <h5 style="margin-left: 1em;"><xsl:apply-templates select="@class"/></h5>
+ <xsl:apply-templates/>
+ </xsl:for-each>
+</xsl:template>
+
+<xsl:template match="solr/analysis/results/queryAnalyzer/factory/args">
+ <div style="margin-left: 2em; font-weight: bold;">{
+ <xsl:for-each select="arg">
+ <xsl:apply-templates select="@name"/>=<xsl:value-of select="."/>,
+ </xsl:for-each>
+ }</div>
+</xsl:template>
+
+<xsl:template match="solr/analysis/results/queryAnalyzer/factory/tokens">
+<div style="margin-left: 2em;">
+ <table width="auto" class="analysis" border="1">
+ <tr>
+ <th>text</th>
+ <th>type</th>
+ <th>position</th>
+ <th>start</th>
+ <th>end</th>
+ </tr>
+ <xsl:for-each select="token">
+ <tr>
+ <td><xsl:value-of select="."/></td>
+ <td><xsl:apply-templates select="@type"/></td>
+ <td><xsl:apply-templates select="@pos"/></td>
+ <td><xsl:apply-templates select="@start"/></td>
+ <td><xsl:apply-templates select="@end"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+</div>
+</xsl:template>
+
+</xsl:stylesheet>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/dataimport.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/dataimport.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/dataimport.jsp
new file mode 100644
index 0000000..f3a1e7e
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/dataimport.jsp
@@ -0,0 +1,56 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page import="org.apache.solr.request.SolrRequestHandler" %>
+<%@ page import="java.util.Map" %>
+<%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+
+<%-- do a verbatim include so we can use the local vars --%>
+<%@include file="_info.jsp"%>
+<html>
+<%
+ String handler = request.getParameter("handler");
+
+ if (handler == null) {
+ Map<String, SolrRequestHandler> handlers = core.getRequestHandlers();
+%>
+<head>
+ <title>DataImportHandler Interactive Development</title>
+ <link rel="stylesheet" type="text/css" href="solr-admin.css">
+</head>
+<body>
+Select handler:
+<ul>
+<%
+ for (String key : handlers.keySet()) {
+ if (handlers.get(key).getClass().getName().equals("org.apache.solr.handler.dataimport.DataImportHandler")) { %>
+ <li><a href="dataimport.jsp?handler=<%=key%>"><%=key%></a></li>
+<%
+ }
+ }
+%>
+</ul>
+</body>
+<% } else { %>
+
+<frameset cols = "50%, 50%">
+ <frame src ="debug.jsp?handler=<%=handler%>" />
+ <frame src ="../select?qt=<%=handler%>&command=status" name="result"/>
+</frameset>
+<% } %>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/debug.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/debug.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/debug.jsp
new file mode 100644
index 0000000..8ff152f
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/debug.jsp
@@ -0,0 +1,109 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+
+<%-- do a verbatim include so we can use the local vars --%>
+<%@include file="_info.jsp"%>
+<html>
+<head>
+<title>DataImportHandler Interactive Development</title>
+<link rel="stylesheet" type="text/css" href="solr-admin.css"/>
+<link rel="icon" href="favicon.ico" type="image/ico"/>
+<link rel="shortcut icon" href="favicon.ico" type="image/ico"/>
+<script src="jquery-1.4.3.min.js"></script>
+</head>
+<body>
+<h1>DataImportHandler Development Console</h1>
+<%
+ String handler = request.getParameter("handler"); // must be specified
+%>
+<form action="../select" target="result" method="get">
+<input type="hidden" name="debug" value="on"/>
+<input type="hidden" name="qt" value="<%=handler%>"/>
+<table>
+ <tr>
+ <th>Handler: </th>
+ <td><%=handler%> <a href="dataimport.jsp" target="_top">change handler</a></td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ <table width="100%">
+ <tr>
+ <td>
+ <select name="command">
+ <option value="full-import" selected="selected">full-import</option>
+ <option value="delta-import">delta-import</option>
+ </select>
+ </td>
+ <td><strong>Verbose</strong> <input
+ name="verbose" type="checkbox"></td>
+ <td><strong>Commit</strong> <input
+ name="commit" type="checkbox"></td>
+ <td><strong>Clean</strong> <input
+ name="clean" type="checkbox"></td>
+ <td><strong>Start Row</strong> <input
+ name="start" size="4" type="text" value="0"></td>
+ <td><strong>No. of Rows</strong> <input name="rows"
+ type="text" size="4" value="10"></td>
+ </tr>
+ </table>
+ </td>
+ <tr>
+ <td><strong>data config xml</strong></td>
+ <td><input class="stdbutton" type="submit" value="debug now">
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2"><textarea id="txtDataConfig" rows="30" cols="80" name="dataConfig"></textarea></td>
+ <script type="text/javascript" language="javascript">
+ ${symbol_dollar}.get("../select?qt=<%=handler%>&command=show-config", function(data){
+ ${symbol_dollar}('${symbol_pound}txtDataConfig').attr('value', data);
+ });
+ </script>
+ </tr>
+</table>
+</form>
+<form action="../select" target="result" method="get">
+ <input type="hidden" name="clean" value="false">
+ <input type="hidden" name="commit" value="true">
+ <input type="hidden" name="qt" value="<%=handler%>"/>
+ <input class="stdbutton" type="submit" name="command" value="full-import">
+ <input class="stdbutton" type="submit" name="command" value="delta-import">
+ <input class="stdbutton" type="submit" name="command" value="status">
+ <input class="stdbutton" type="submit" name="command" value="reload-config">
+ <input class="stdbutton" type="submit" name="command" value="abort">
+</form>
+<form action="../select" target="result" method="get">
+ <input type="hidden" name="q" value="*:*">
+ <input type="hidden" name="start" value="0">
+ <input type="hidden" name="rows" value="0">
+ <input class="stdbutton" type="submit" value="Documents Count">
+</form>
+<form action="../select" target="result" method="get">
+ <input type="hidden" name="qt" value="<%=handler%>"/>
+ <input type="hidden" name="verbose" value="true">
+ <input type="hidden" name="clean" value="true">
+ <input type="hidden" name="commit" value="true">
+ <input type="hidden" name="command" value="full-import">
+ <input class="stdbutton" type="submit" value="Full Import with Cleaning">
+</form>
+
+<a href="index.jsp" target="_parent">Return to Admin Page</a>
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/distributiondump.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/distributiondump.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/distributiondump.jsp
new file mode 100644
index 0000000..fc37115
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/distributiondump.jsp
@@ -0,0 +1,156 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+
+<%@ page import="java.io.BufferedReader,
+ java.io.FileReader,
+ java.io.FilenameFilter"%>
+
+<%@include file="header.jsp" %>
+
+<%
+ File slaveinfo = new File(solrHome + "logs/snappuller.status");
+
+ StringBuffer buffer = new StringBuffer();
+ StringBuffer buffer2 = new StringBuffer();
+ String mode = "";
+
+ if (slaveinfo.canRead()) {
+ // Slave instance
+ mode = "Slave";
+ File slavevers = new File(solrHome + "logs/snapshot.current");
+ BufferedReader inforeader = new BufferedReader(new FileReader(slaveinfo));
+ BufferedReader versreader = new BufferedReader(new FileReader(slavevers));
+ buffer.append("<tr>${symbol_escape}n" +
+ "<td>${symbol_escape}n" +
+ "Version:" +
+ "</td>${symbol_escape}n" +
+ "<td>${symbol_escape}n")
+ .append( versreader.readLine())
+ .append( "<td>${symbol_escape}n" +
+ "</td>${symbol_escape}n" +
+ "</tr>${symbol_escape}n" +
+ "<tr>${symbol_escape}n" +
+ "<td>${symbol_escape}n" +
+ "Status:" +
+ "</td>${symbol_escape}n" +
+ "<td>${symbol_escape}n")
+ .append( inforeader.readLine())
+ .append( "</td>${symbol_escape}n" +
+ "</tr>${symbol_escape}n");
+ } else {
+ // Master instance
+ mode = "Master";
+ File masterdir = new File(solrHome + "logs/clients");
+ FilenameFilter sfilter = new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ return name.startsWith("snapshot.status");
+ }
+ };
+ FilenameFilter cfilter = new FilenameFilter() {
+ public boolean accept(File dir, String name) {
+ return name.startsWith("snapshot.current");
+ }
+ };
+ File[] clients = masterdir.listFiles(cfilter);
+ if (clients == null) {
+ buffer.append("<tr>${symbol_escape}n" +
+ "<td>${symbol_escape}n" +
+ "</td>${symbol_escape}n" +
+ "<td>${symbol_escape}n" +
+ "No distribution info present" +
+ "</td>${symbol_escape}n" +
+ "</tr>${symbol_escape}n");
+ } else {
+ buffer.append("<h4>Client Snapshot In Use:</h4>${symbol_escape}n" +
+ "<tr>${symbol_escape}n" +
+ "<th>${symbol_escape}n" +
+ "Client" +
+ "</th>${symbol_escape}n" +
+ "<th>${symbol_escape}n" +
+ "Version" +
+ "</th>${symbol_escape}n" +
+ "</tr>${symbol_escape}n");
+ int i = 0;
+ while (i < clients.length) {
+ String fileName=clients[i].toString();
+ int p=fileName.indexOf("snapshot.current");
+ String clientName=fileName.substring(p+17);
+ BufferedReader reader = new BufferedReader(new FileReader(clients[i]));
+ buffer.append("<tr>${symbol_escape}n" +
+ "<td>${symbol_escape}n" +
+ clientName +
+ "</td>${symbol_escape}n" +
+ "<td>${symbol_escape}n")
+ .append( reader.readLine())
+ .append( "</td>${symbol_escape}n" +
+ "</tr>${symbol_escape}n" +
+ "<tr>${symbol_escape}n" +
+ "</tr>${symbol_escape}n");
+ i++;
+ }
+ clients = masterdir.listFiles(sfilter);
+ if (clients!=null) {
+ buffer.append("</table>${symbol_escape}n" +
+ "<h4>Client Snapshot Distribution Status:</h4>${symbol_escape}n" +
+ "<table>${symbol_escape}n" +
+ "<tr>${symbol_escape}n" +
+ "<th>${symbol_escape}n" +
+ "Client" +
+ "</th>${symbol_escape}n" +
+ "<th>${symbol_escape}n" +
+ "Status" +
+ "</th>${symbol_escape}n" +
+ "</tr>${symbol_escape}n");
+ i = 0;
+ while (i < clients.length) {
+ String fileName=clients[i].toString();
+ int p=fileName.indexOf("snapshot.status");
+ String clientName=fileName.substring(p+16);
+ BufferedReader reader = new BufferedReader(new FileReader(clients[i]));
+ buffer.append("<tr>${symbol_escape}n" +
+ "<td>${symbol_escape}n" +
+ clientName +
+ "</td>${symbol_escape}n" +
+ "<td>${symbol_escape}n")
+ .append( reader.readLine())
+ .append( "</td>${symbol_escape}n" +
+ "</tr>${symbol_escape}n" +
+ "<tr>${symbol_escape}n" +
+ "</tr>${symbol_escape}n");
+ i++;
+ }
+ }
+ }
+ }
+%>
+
+
+<br clear="all">
+<h2>Distribution Info: <%= mode %> Server</h2>
+<br clear="all" />
+(<a href="http://wiki.apache.org/solr/CollectionDistribution">What Is This Page?</a>)
+<br clear="all" />
+<table>
+<%= buffer %>
+</table>
+<br><br>
+ <a href=".">Return to Admin Page</a>
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/favicon.ico
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/favicon.ico b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/favicon.ico
new file mode 100644
index 0000000..e69de29
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/form.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/form.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/form.jsp
new file mode 100644
index 0000000..c5fff4a
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/form.jsp
@@ -0,0 +1,140 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
+
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+<%@include file="header.jsp" %>
+
+<br clear="all">
+<form name="queryForm" method="GET" action="../select" accept-charset="UTF-8">
+<!-- these are good defaults to have if people bookmark the resulting
+ URLs, but they should not show up in the form since they are very
+ output type specific.
+ -->
+<input name="indent" type="hidden" value="on">
+<input name="version" type="hidden" value="2.2">
+
+<table>
+<tr>
+ <td>
+ <strong>Solr/Lucene Statement</strong>
+ </td>
+ <td>
+ <textarea rows="5" cols="60" name="q"><%= defaultSearch %></textarea>
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Filter Query</strong>
+ </td>
+ <td>
+ <textarea rows="2" cols="60" name="fq"></textarea>
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Start Row</strong>
+ </td>
+ <td>
+ <input name="start" type="text" value="0">
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Maximum Rows Returned</strong>
+ </td>
+ <td>
+ <input name="rows" type="text" value="10">
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Fields to Return</strong>
+ </td>
+ <td>
+ <input name="fl" type="text" value="*,score">
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Query Type</strong>
+ </td>
+ <td>
+ <input name="qt" type="text" value="standard">
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Output Type</strong>
+ </td>
+ <td>
+ <input name="wt" type="text" value="standard">
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Debug: enable</strong>
+ </td>
+ <td>
+ <input name="debugQuery" type="checkbox" >
+ <em><font size="-1"> Note: you may need to "view source" in your browser to see explain() correctly indented.</font></em>
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Debug: explain others</strong>
+ </td>
+ <td>
+ <input name="explainOther" type="text" >
+ <em><font size="-1"> Apply original query scoring to matches of this query to see how they compare.</font></em>
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Enable Highlighting</strong>
+ </td>
+ <td>
+ <input name="hl" type="checkbox" >
+ </td>
+</tr>
+<tr>
+ <td>
+ <strong>Fields to Highlight</strong>
+ </td>
+ <td>
+ <input name="hl.fl" type="text" >
+ </td>
+</tr>
+<tr>
+ <td>
+ </td>
+ <td>
+ <input class="stdbutton" type="submit" value="search" onclick="if (queryForm.q.value.length==0) { alert('no empty queries, please'); return false; } else { queryForm.submit(); } ">
+ </td>
+</tr>
+</table>
+</form>
+<br clear="all">
+<em>
+This form demonstrates the most common query options available for the
+built in Query Types. Please consult the Solr Wiki for additional
+Query Parameters.
+</em>
+
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-file.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-file.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-file.jsp
new file mode 100644
index 0000000..84f9546
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-file.jsp
@@ -0,0 +1,73 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/plain; charset=utf-8" pageEncoding="UTF-8" %>
+
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+<%@ page import="org.apache.solr.core.SolrCore,
+ java.io.InputStream,
+ java.io.InputStreamReader,
+ java.io.Reader,
+ java.util.StringTokenizer,
+ java.util.logging.Logger"%>
+<%!
+ static Logger log = Logger.getLogger(SolrCore.class.getName());
+%>
+<%
+ // NOTE -- this file will be removed in a future release
+ log.warning("Using deprecated JSP: " + request.getRequestURL().append("?").append(request.getQueryString()) + " -- check the ShowFileRequestHandler" );
+
+ Object ocore = request.getAttribute("org.apache.solr.SolrCore");
+ SolrCore core = ocore instanceof SolrCore? (SolrCore) ocore : SolrCore.getSolrCore();
+ String fname = request.getParameter("file");
+ String optional = request.getParameter("optional");
+ String gettableFiles = core.getSolrConfig().get("admin/gettableFiles","");
+ StringTokenizer st = new StringTokenizer(gettableFiles);
+ InputStream is;
+ boolean isValid = false;
+ boolean isOptional = false;
+ if (fname != null) {
+ // Validate fname
+ while(st.hasMoreTokens()) {
+ if (st.nextToken().compareTo(fname) == 0) isValid = true;
+ }
+ }
+ if (optional!=null && optional.equalsIgnoreCase("y")) {
+ isOptional=true;
+ }
+ if (isValid) {
+ try {
+ is= core.getSolrConfig().openResource(fname);
+ Reader input = new InputStreamReader(is);
+ char[] buf = new char[4096];
+ while (true) {
+ int len = input.read(buf);
+ if (len<=0) break;
+ out.write(buf,0,len);
+ }
+ }
+ catch (RuntimeException re) {
+ if (!isOptional) {
+ throw re;
+ }
+ }
+ } else {
+ out.println("<ERROR>");
+ out.println("Permission denied for file "+ fname);
+ out.println("</ERROR>");
+ }
+%>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-properties.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-properties.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-properties.jsp
new file mode 100644
index 0000000..61a28a8
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/get-properties.jsp
@@ -0,0 +1,27 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/plain;charset=UTF-8" language="java" %>
+
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+<%
+ java.util.Enumeration e = System.getProperties().propertyNames();
+ while(e.hasMoreElements()) {
+ String prop = (String)e.nextElement();
+ out.println(prop + " = " + System.getProperty(prop));
+ }
+%>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/header.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/header.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/header.jsp
new file mode 100644
index 0000000..cf3ce78
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/header.jsp
@@ -0,0 +1,47 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
+
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+<html>
+<head>
+<%
+request.setCharacterEncoding("UTF-8");
+%>
+<%@include file="_info.jsp" %>
+<script>
+var host_name="<%= hostname %>"
+</script>
+
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<link rel="stylesheet" type="text/css" href="solr-admin.css">
+<link rel="icon" href="favicon.ico" type="image/ico"></link>
+<link rel="shortcut icon" href="favicon.ico" type="image/ico"></link>
+<title>Solr admin page</title>
+</head>
+
+<body>
+<a href="."><img border="0" align="right" height="78" width="142" src="solr_small.png" alt="Solr"></a>
+<h1>Solr Admin (<%= collectionName %>)
+<%= enabledStatus==null ? "" : (isEnabled ? " - Enabled" : " - Disabled") %> </h1>
+
+<%= hostname %>:<%= port %><br/>
+cwd=<%= cwd %> SolrHome=<%= solrHome %>
+<br/>
+<%String cachingStatus = " HTTP caching is "; %>
+<%= cachingEnabled ? cachingStatus + " ON": cachingStatus + " OFF" %>
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/c32963d5/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/index.jsp
----------------------------------------------------------------------
diff --git a/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/index.jsp b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/index.jsp
new file mode 100644
index 0000000..1a405e7
--- /dev/null
+++ b/lmf-archetypes/lmf-archetype-webapp/src/main/resources/archetype-resources/src/main/webapp/solr/admin/index.jsp
@@ -0,0 +1,162 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<%@ page contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
+<%--
+ ~ Copyright (c) 2012 Salzburg Research.
+ ~
+ ~ Licensed 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.
+ --%>
+
+<%-- ${symbol_dollar}Id: index.jsp 1064402 2011-01-28 01:12:39Z hossman ${symbol_dollar} --%>
+<%-- ${symbol_dollar}Source: /cvs/main/searching/SolrServer/resources/admin/index.jsp,v ${symbol_dollar} --%>
+<%-- ${symbol_dollar}Name: ${symbol_dollar} --%>
+
+<%@ page import="org.apache.solr.handler.ReplicationHandler" %>
+<%@ page import="java.util.Collection" %>
+<%@ page import="java.util.Date" %>
+
+<%-- jsp:include page="header.jsp"/ --%>
+<%-- do a verbatim include so we can use the local vars --%>
+<%@include file="header.jsp" %>
+<%boolean replicationhandler = !core.getRequestHandlers(ReplicationHandler.class).isEmpty();%>
+<br clear="all">
+<table>
+
+<tr>
+ <td>
+ <h3>Solr</h3>
+ </td>
+ <td>
+ <% if (null != core.getSchemaResource()) { %>
+ [<a href="file/?contentType=text/xml;charset=utf-8&file=<%=core.getSchemaResource()%>">Schema</a>]
+ <% }
+ if (null != core.getConfigResource()) { %>
+ [<a href="file/?contentType=text/xml;charset=utf-8&file=<%=core.getConfigResource()%>">Config</a>]
+ <% } %>
+ [<a href="analysis.jsp?highlight=on">Analysis</a>]
+ [<a href="schema.jsp">Schema Browser</a>] <%if(replicationhandler){%>[<a href="replication/index.jsp">Replication</a>]<%}%>
+ <br>
+ [<a href="stats.jsp">Statistics</a>]
+ [<a href="registry.jsp">Info</a>]
+ [<a href="distributiondump.jsp">Distribution</a>]
+ [<a href="ping">Ping</a>]
+ [<a href="logging">Logging</a>]
+ </td>
+</tr>
+
+<%-- List the cores (that arent this one) so we can switch --%>
+<% org.apache.solr.core.CoreContainer cores = (org.apache.solr.core.CoreContainer)request.getAttribute("org.apache.solr.CoreContainer");
+ if (cores!=null) {
+ Collection<String> names = cores.getCoreNames();
+ if (names.size() > 1) {%><tr><td><strong>Cores:</strong><br></td><td><%
+ String url = request.getContextPath();
+ for (String name : names) {
+ String lname = name.length()==0 ? cores.getDefaultCoreName() : name; // use the real core name rather than the default
+ if(name.equals(core.getName())) {
+ %>[<%=lname%>]<%
+ } else {
+ %>[<a href="<%=url%>/<%=lname%>/admin/"><%=lname%></a>]<%
+ }
+ }%></td></tr><%
+}}%>
+
+<tr>
+ <td>
+ <strong>App server:</strong><br>
+ </td>
+ <td>
+ [<a href="get-properties.jsp">Java Properties</a>]
+ [<a href="threaddump.jsp">Thread Dump</a>]
+ <%
+ if (enabledFile!=null)
+ if (isEnabled) {
+ %>
+ [<a href="action.jsp?action=Disable">Disable</a>]
+ <%
+ } else {
+ %>
+ [<a href="action.jsp?action=Enable">Enable</a>]
+ <%
+ }
+ %>
+ </td>
+</tr>
+
+
+<%
+ // a quick hack to get rid of get-file.jsp -- note this still spits out invalid HTML
+ out.write( org.apache.solr.handler.admin.ShowFileRequestHandler.getFileContents( "admin-extra.html" ) );
+%>
+
+</table><P>
+
+
+<table>
+<tr>
+ <td>
+ <h3>Make a Query</h3>
+ </td>
+ <td>
+[<a href="form.jsp">Full Interface</a>]
+ </td>
+
+</tr>
+<tr>
+ <td>
+ Query String:
+ </td>
+ <td colspan=2>
+ <form name=queryForm method="GET" action="../select/" accept-charset="UTF-8">
+ <textarea class="std" rows="4" cols="40" name="q"><%= defaultSearch %></textarea>
+ <input name="version" type="hidden" value="2.2">
+ <input name="start" type="hidden" value="0">
+ <input name="rows" type="hidden" value="10">
+ <input name="indent" type="hidden" value="on">
+ <br><input class="stdbutton" type="submit" value="search"
+ onclick="if (queryForm.q.value.length==0) { alert('no empty queries, please'); return false; } else { queryForm.submit(); } ">
+ </form>
+ </td>
+</tr>
+</table><p>
+
+<table>
+<tr>
+ <td>
+ <h3>Assistance</h3>
+ </td>
+ <td>
+ [<a href="http://lucene.apache.org/solr/">Documentation</a>]
+ [<a href="http://issues.apache.org/jira/browse/SOLR">Issue Tracker</a>]
+ [<a href="mailto:solr-user@lucene.apache.org">Send Email</a>]
+ <br>
+ [<a href="http://wiki.apache.org/solr/SolrQuerySyntax">Solr Query Syntax</a>]
+ </td>
+</tr>
+<tr>
+ <td>
+ </td>
+ <td>
+ Current Time: <%= new Date() %>
+ </td>
+</tr>
+<tr>
+ <td>
+ </td>
+ <td>
+ Server Start At: <%= new Date(core.getStartTime()) %>
+ </td>
+</tr>
+</table>
+</body>
+</html>