mirror of https://github.com/interlegis/sapl.git
Marcio Mazza
6 years ago
24 changed files with 228 additions and 126 deletions
@ -1,27 +1,55 @@ |
|||
**ESTAS INSTRUÇÕES ESTÃO DEFASADAS. EM BREVE IREMOS DISPONIBILIZAR UM TUTORIAL MAIS ATUALIZADO DE COMO INTEGRAR O SOLR AO SAPL** |
|||
|
|||
================================ |
|||
Instruções para instalar o Solr |
|||
================================ |
|||
|
|||
Solr é a ferramenta utilizada pelo SAPL 3.1 para indexar documentos para que possa ser feita |
|||
a Pesquisa Textual. |
|||
Solr é uma plataforma open source de indexação e busca textual utilizada pelo SAPL 3.1 para indexar documentos (normas jurídicas, matérias legislativas e documentos acessórios). |
|||
|
|||
Observação: Se a execução do SAPL for mediante containers Docker então use o arquivo *docker-compose.yml* disponível em |
|||
*https://github.com/interlegis/sapl/blob/3.1.x/solr/docker-compose.yml* (verifique os mapeamentos de volume estão corretos, a verso do SAPL referenciada no arquivo docker-compose.yml, e realize o backup de seu BD **antes** de qualquer tentativa de substituição do arquivo *docker-compose.yml* em uso corrente); |
|||
|
|||
1) Faça o download da distribuição *binária* do Apache Solr do site oficial do projeto **http://lucene.apache.org/solr** |
|||
|
|||
|
|||
As instalações Solr suportadas até o momento vão da 7.4 à 8; |
|||
|
|||
|
|||
2) Descompacte o arquivo em uma pasta do diretório (referenciada neste tutorial como $SOLR_HOME) |
|||
|
|||
|
|||
3) Inicie o Solr com o comando: |
|||
|
|||
**$SOLR_HOME/bin/solr start -c** |
|||
|
|||
|
|||
4) Por meio do browser, acesse a URL **http://localhost:8983** (ou informe o endereço da máquina onde o Solr foi instalado) |
|||
|
|||
5) Pare o servidor do SAPL; |
|||
|
|||
6) Edite o arquivo .env adicionando as seguintes linhas: |
|||
|
|||
USE_SOLR = True |
|||
|
|||
|
|||
SOLR_COLLECTION = sapl |
|||
|
|||
|
|||
SOLR_URL = http://localhost:8983 |
|||
|
|||
|
|||
Adicione ao arquivo ``.env`` o seguinte atributo: |
|||
(o valor do campo SOLR_URL deve corresponder à URL acessada no item 3) |
|||
|
|||
``SOLR_URL = 'http://127.0.0.1:8983/solr'`` |
|||
7) Entre no diretório raiz do SAPL e digite o comando: **python3 solr_api.py -c sapl -u http://localhost:8983`** |
|||
|
|||
Dentro do diretório principal siga os seguintes passos:: |
|||
(a URL informada acima deve ser a mesma dos itens 3 e 6) |
|||
|
|||
curl -LO https://archive.apache.org/dist/lucene/solr/4.10.2/solr-4.10.2.tgz |
|||
tar xvzf solr-4.10.2.tgz |
|||
cd solr-4.10.2 |
|||
cd example |
|||
java -jar start.jar |
|||
./manage.py build_solr_schema --filename solr-4.10.2/example/solr/collection1/conf/schema.xml |
|||
8) Enquanto o Solr realiza a indexação da base de dados do SAPL, inicie em uma outra tela o SAPL; |
|||
|
|||
9) Após realizados os passos com sucesso, nas telas de busca de Matéria Legislativa e Normas deverá aparecer um botão |
|||
de 'Busca Textual' próximo ao botão de busca tradicional. |
|||
|
|||
Após isso, deve-se parar o servidor do Solr e restartar com ``java -jar start.jar`` |
|||
**Observações:** |
|||
|
|||
* Para parar o Solr execute o comando **$SOLR_HOME/bin/solr stop** |
|||
|
|||
**OBS: Toda vez que o código da pesquisa textual for modificado, os comandos de build_solr_schema e start.jar devem ser rodados, nessa mesma ordem.** |
|||
* Para reindexar os dados do SAPL execute o comando **python3 manage.py rebuild_index** (isso irá apagar todos os dados |
|||
do Solr e indexar tudo novamente). |
|||
|
@ -1,27 +1,36 @@ |
|||
<fieldset> |
|||
<p align="justify"> |
|||
{% if materia_expediente %} |
|||
{% if materia_expediente %} |
|||
<strong>Matérias do Expediente: </strong> |
|||
{% for m in materia_expediente %} |
|||
<b>{{m.numero}} - {{m.titulo}}</b> |
|||
|
|||
{% if m.turno %} |
|||
Turno: {{m.turno}} |
|||
{% endif %} |
|||
|
|||
Autor{{ m.autor|length|pluralize:"es" }}: {{ m.autor|join:', ' }} |
|||
|
|||
{% if m.numero_protocolo %} |
|||
Número de Protocolo: {{ m.numero_protocolo }} |
|||
{% endif %} |
|||
|
|||
{% if m.numero_processo %} |
|||
Processo: {{ m.numero_processo }} |
|||
{% endif %} |
|||
|
|||
{{m.ementa|safe}} |
|||
{{m.resultado}} {{m.resultado_observacao}}</td> |
|||
{% endfor %} |
|||
{% for m in materia_expediente %} |
|||
<b>{{m.numero}} - {{m.titulo}}</b>, |
|||
{{m.ementa|safe}} |
|||
Autor{{ m.autor|length|pluralize:"es" }}: {{ m.autor|join:', ' }}, |
|||
{% if m.numero_protocolo %} |
|||
Número de Protocolo: {{ m.numero_protocolo }}, |
|||
{% endif %} |
|||
{% if m.numero_processo %} |
|||
Processo: {{ m.numero_processo }}, |
|||
{% endif %} |
|||
{%if m.turno %} |
|||
Turno: {{m.turno}}, |
|||
{%endif %} |
|||
{%if m.tipo_votacao %} |
|||
Tipo: {{m.tipo_votacao}}, |
|||
Sim: {{ m.voto_sim }}, |
|||
Não: {{ m.voto_nao }}, |
|||
Abstenções: {{m.voto_abstencoes}}, |
|||
{% endif %} |
|||
Resultado:</b> {{m.resultado}} |
|||
{% if m.resultado_observacao %} - {{m.resultado_observacao}} {% endif %} |
|||
{% if m.voto_nominal%} |
|||
<b>Votos Nominais :</b> |
|||
{% for voto in m.voto_nominal %} |
|||
{{voto.0}} - {{voto.1}} |
|||
{% if not forloop.last %} ; {% endif %} |
|||
{% endfor %} |
|||
{% endif %} |
|||
{% endfor %} |
|||
{% endif %} |
|||
</p> |
|||
</fieldset> |
Loading…
Reference in new issue