我正在尝试使用jasperreports,当我尝试运行我正在开发的应用程序时,我遇到了下一个错误:
org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.
at es.uniway.principal.EnviarInfoPedido.infoPedido_Mayorista(EnviarInfoPedido.java:452)
at es.uniway.principal.ObtenerProcesos.ejecutar(ObtenerProcesos.java:78)
at es.uniway.principal.SincronizadorCloud.main(SincronizadorCloud.java:14)
对于我有这个代码,我写的是:
xtw = xof.createXMLStreamWriter(new FileWriter(nombre_report+".xml"));
//
// xmlwriter.WriteStartDocument();
xtw.writeStartDocument();
// nodo 1
xtw.writeStartElement("request");
xtw.writeAttribute("operationName", "runReport");
xtw.writeAttribute("locale", "es");
// nodo 2
xtw.writeStartElement("argument");
xtw.writeAttribute("name","RUN_OUTPUT_FORMAT");
xtw.writeCharacters(formato.trim().toUpperCase());
xtw.writeEndElement(); // nodo 2
// nodo 2
xtw.writeStartElement("argument");
xtw.writeAttribute("name","USE_DIME_ATTACHMENTS");
xtw.writeCharacters("1");
xtw.writeEndElement(); // nodo 2
// nodo 3
xtw.writeStartElement("resourceDescriptor");
xtw.writeAttribute("name","");
xtw.writeAttribute("wsType","");
xtw.writeAttribute("uriString", CARPETA_REPORT + nombre_report.trim());
xtw.writeAttribute("isNew", "false");
//// nodo 4
//xmlwriter.WriteStartElement("label", null);
//xmlwriter.WriteEndElement(); // nodo 4
if (nombre_report == "LINEAS_DETALLE_COSTE" && id_albaran_coste.trim() != " ")
{
// para las lÃÂÂneas detalle coste teneos 2 parámetros:
// - NALNARANC --> albaran para calcular el descuento de coste
// - NALBARANV --> albaran para calcular el descuento de venta
// parametro 1
xtw.writeStartElement("parameter");
xtw.writeAttribute("name", "NALBARANC");
xtw.writeAttribute("class", "java.lang.Integer");
xtw.writeCharacters(id_albaran_coste);
xtw.writeEndElement(); // parametro 1
// parametro 2
xtw.writeStartElement("parameter");
xtw.writeAttribute("name", "NALBARANV");
xtw.writeAttribute("class", "java.lang.Integer");
xtw.writeCharacters(id_albaran);
xtw.writeEndElement(); // parametro 1
}
else
{
// parametro 1
xtw.writeStartElement("parameter");
xtw.writeAttribute("name", "NALBARAN");
xtw.writeAttribute("class", "java.lang.Integer");
xtw.writeCharacters(id_albaran);
xtw.writeEndElement(); // parametro 1
}
xtw.writeEndDocument();
xtw.flush();
xtw.close();
出了什么问题?谢谢。 xml就是这个,我不知道出了什么问题:
<?xml version="1.0" ?> <request operationName="runReport" locale="es"> <argument name="RUN_OUTPUT_FORMAT"> CSV </argument> <argument name="USE_DIME_ATTACHMENTS"> 1</argument><resourceDescriptor name="" wsType="" uriString="/ICLDI/CABECERA_PEDIDO_CONTRATO" isNew="false"><parameter name="NALBARAN" class="java.lang.Integer">6658</parameter></resourceDescriptor></request>
再次感谢。
答案 0 :(得分:0)
删除此处的空格:
<?xml version="1.0" ?> <request
它应该是这样的:
<?xml version="1.0" ?><request
其他问题可能是您在XML文件的最开头有一些不可见的额外字符,例如Byte-Order-Mark(也称为BOM)它表明UTF-16文件是高端或低端-endian。