As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.
Join the TIBCO Community TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.
From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
Request access to the private WebFOCUS User Group (login required) to network with fellow members.
Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.
I don't know if there is any best practice guide, but if you can explain what type of app your building, I might be able to give you some practical advice.
The ReportCaster Web Services 7.1 manual (DN4500716.0505) has some high level information in the intro chapter that may be of some use, but it is not exactly Best Practices material.
If you have an InfoResponse ID, log on to the Tech Support Web site. From the top navigation bar, click Publications then select Tech Library Home. By logging in first, you can download the PDF file and/or view the HTMLHelp version.
The application needs to trigger reports when given events have happened or are have completed within the application. The standard approach that we have employed is to trigger the reports using the Report Servers Web Services. We are currently in the process of moving the Report Server to WebFOCUS.
When a request is made it needs to be run as quickly as possible and the results saved in the Report Library. Since we need to save the results in the Report Library we switched to use the Report Caster Web Services from our first implementation which used the WebFOCUS implementation.
When you trigger a process that will schedule a report, the newly scheduled report will always wait for the next execution run (typically 1 min intervals). It appears that your timing is critical, so I would suggest that you pre-schedule all of your potential reports as a "run once" option. When the event occurs, use the ScheduleManagerWS.run function for emediate execution of your report.
"There is no limit to what you can achieve ... if you don’t care who gets the credit." Roger Abbott
Thats pretty much the approach we have taken, but I am having problem getting back the log information, even though I can see it on the Report Caster GUI. Has anyone else seen any errors with the Log Service.
java.lang.reflect.InvocationTargetException at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:2- 60) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:16- 9) at org.apache.axis.encoding.DeserializationContextImpl.endElement(Deserializati- onContextImpl.java:1015) at org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1403) at org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator- .java:1550) at org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XM- LDocumentScanner.java:1204) at org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.- java:381) at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationCon- textImpl.java:242) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538) at org.apache.axis.Message.getSOAPEnvelope(Message.java:376) at org.apache.axis.client.Call.invokeEngine(Call.java:2583) at org.apache.axis.client.Call.invoke(Call.java:2553) at org.apache.axis.client.Call.invoke(Call.java:2248) at org.apache.axis.client.Call.invoke(Call.java:2171) at org.apache.axis.client.Call.invoke(Call.java:1691) at com.ibi.schema.reportcaster711.services.log.LogServiceSoapBindingStub.getLas- tLogByScheduleId(LogServiceSoapBindingStub.java:390) at com.fidelity.gpws.framework.reports.webfocus.ReportCasterWsdlReport.doExecut- eReport(ReportCasterWsdlReport.java:638) at com.fidelity.gpws.framework.reports.webfocus.ReportCasterWsdlReport.doExecut- eAndTransmitReport(ReportCasterWsdlReport.java:290)
The code has already logged in. At point the LogService is being accessed the code has already setup and run a schedule to run a report, using the Schedule Service, and checked that the Schedule has run, using the Console Service. I am pretty sure the login at this point is good.
Here is the SOAP Request that is being transmitted (I have dummed out the Security Token as it fairly: