2017-05-31 4 views
0

Verwenden von TIBCO JasperReports Server 6.3.0 und Hinzufügen von Ressourcen über den Rest_v2-Endpunkt. Die resource descriptor for file scheint ziemlich einfach, und das ist das Skript, das ich es bin mit testen:Jasper-Server rest_v2 zum Hochladen einer Datei, die nach zusätzlichen Parametern fragt

#!/bin/bash 
output=$(curl -sX POST "http://localhost:8080/jasperserver/rest_v2/resources/common/someFile.jrtx?createFolders=true" \ 
     -H "Content-Type:application/repository.query+json" \ 
     -H "Accept:application/json" \ 
     -d "{ 
      \"uri\" :\"/common/someFile.jrtx\", 
      \"label\":\"someFile.jrtx\", 
      \"description\":\"Some File\", 
      \"permissionMask\":\"0\", 
      \"type\":\"jrtx\", 
      \"content\":\"$(base64 -w 0 /path/to/someFile.jrtx)\" 
     }" \ 
     --user jasperadmin:jasperadmin) 

echo "${output}" | python -m json.tool 

Der Ausgang ich dafür bin immer ist rätselhaft:

[ 
    { 
     "errorCode": "mandatory.parameter.error", 
     "message": "A value for the field QueryValue must be set", 
     "parameters": [ 
      "QueryValue" 
     ] 
    }, 
    { 
     "errorCode": "mandatory.parameter.error", 
     "message": "A value for the field Language must be set", 
     "parameters": [ 
      "Language" 
     ] 
    } 
] 

Der Deskriptor für FILE nicht erwähnt eines dieser Felder (Language oder QueryValue) und ich muss sie beim manuellen Erstellen von Dateien nicht eingeben. Was mache ich falsch?

Die JRTX Datei:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE jasperTemplate PUBLIC "-//JasperReports//DTD Template//EN" "http://jasperreports.sourceforge.net/dtds/jaspertemplate.dtd"> 

<jasperTemplate> 
    <style name="SimpleStyle"/> 
    <style name="ColumnHeading" hAlign="Center" vAlign="Middle" isBlankWhenNull="true" fontName="Verdana" fontSize="10" isBold="true"> 
     <pen lineWidth="1.0" lineColor="#666565"/> 
     <box> 
     <topPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/> 
     <leftPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/> 
     <bottomPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/> 
     <rightPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/> 
     </box> 
    </style> 
    <style name="Title" markup="" fontSize="20" isBold="true"/> 
    <style name="TableCells" hAlign="Center" vAlign="Middle" isBlankWhenNull="true" fontName="Verdana" fontSize="10" isBold="false"> 
     <pen lineWidth="1.0" lineColor="#CCCCCC"/> 
     <box> 
     <topPen lineWidth="1.0" lineStyle="Solid" lineColor="#CCCCCC"/> 
     <leftPen lineWidth="1.0" lineStyle="Solid" lineColor="#CCCCCC"/> 
     <bottomPen lineWidth="1.0" lineStyle="Solid" lineColor="#CCCCCC"/> 
     <rightPen lineWidth="1.0" lineStyle="Solid" lineColor="#CCCCCC"/> 
     </box> 
    </style> 
    <style name="VerticalColumnHeading" hAlign="Center" vAlign="Middle" rotation="Left" fontName="Verdana" fontSize="12" isBold="true"/> 
    <style name="GroupHeading" hAlign="Left" vAlign="Middle" fontName="Verdana" fontSize="10"> 
     <pen lineWidth="1.0" lineColor="#CCCCCC"/> 
    </style> 
</jasperTemplate> 
+0

Können Sie fügen Sie Ihren someFile.jrtx? –

Antwort

0

Falscher Inhaltstyp. Statt dessen

-H "Content-Type:application/repository.query+json" \ 

ich sollte diese verwenden:

-H "Content-Type:application/repository.file+json" \ 
Verwandte Themen