Tengo el siguiente problema: yo intento consumir los servicios soap que ofrece ssrs a traves de java. yo utilizo el asistente de consumo de servicios web soap con netbeans (jax-ws (web services client)). una vez generada las clases en mi proyecto intento renderizar un reporte que tengo de prueba.
public static void main(String[] args) {
ReportExecutionService service = new ReportExecutionService();
ReportExecutionServiceSoap rs = service.getReportExecutionServiceSoap();
String reportPath = "/PruebaJuan";
String format = "HTML4.0";
String devInfo = "<DeviceInfo><Toolbar>False</Toolbar></DeviceInfo>";
Holder<byte[]> result = new Holder<byte[]>();
Holder<String> extension = new Holder<String>();
Holder<String> mimeType = new Holder<String>();
Holder<String> encoding = new Holder<String>();
Holder<ArrayOfWarning> warnings = new Holder<ArrayOfWarning>();
Holder<ArrayOfString> streamIDs = new Holder<ArrayOfString>();
try {
ExecutionInfo execInfo = rs.loadReport(reportPath, null);
rs.render(format, devInfo, result, extension, mimeType, encoding, warnings, streamIDs);
} catch (Exception e) {
System.out.println();
System.out.println(e);
}
System.out.println(result.value);
}
y tengo como resultado lo siguiente
javax.xml.ws.soap.SOAPFaultException: System.Web.Services.Protocols.SoapException: The session identifier is missing. A session identifier is required for this operation. ---> Microsoft.ReportingServices.Diagnostics.Utilities.MissingSessionIdException: The session identifier is missing. A session identifier is required for this operation.
at Microsoft.ReportingServices.Library.ReportExecution2005Impl.InternalRender(String Format, String DeviceInfo, PageCountMode pageCountMode, Stream& Result, String& Extension, String& MimeType, String& Encoding, Warning[]& Warnings, String[]& StreamIds)
at Microsoft.ReportingServices.Library.ReportExecution2005Impl.Render(String Format, String DeviceInfo, PageCountMode pageCountMode, Byte[]& Result, String& Extension, String& MimeType, String& Encoding, Warning[]& Warnings, String[]& StreamIds)
at Microsoft.ReportingServices.WebServer.ReportExecutionService.Render(String Format, String DeviceInfo, Byte[]& Result, String& Extension, String& MimeType, String& Encoding, Warning[]& Warnings, String[]& StreamIds)
null
si alguien me puede ayudar o sabe como hacer para que se pueda renderizar un reporte de ssrs con java se lo agradezco