Jump to content
We've recently updated our Privacy Statement, available here ×

halfer

Members
  • Posts

    54
  • Joined

  • Last visited

 Content Type 

Profiles

Forum

Events

Featured Visualizations

Knowledge Base

Documentation (PDF Downloads)

Blog

Documentation (Test Area)

Documentation

Dr. Jaspersoft Webinar Series

Security Advisories

Downloads

Everything posted by halfer

  1. On a general note on using PHP with Jasper, PEAR's SOAP library of course is the natural choice for communicating with the server. However as far as I can tell it is written for PHP4, and so dumps a number of notices to the screen that have to be suppressed in PHP5. Our web reporting service is now working nice and reliably, but nevertheless I think I will switch to a PHP5 SOAP approach when I get a moment. If anyone has already done this, please post a link to your experiences if you can.
  2. Have you restarted JasperServer after you've changed the connection password? If so, was the wrong connection still used after the restart?Well, I didn't change the connection password as such; I have a number of report jrxml files on the box, each referenced in a report bundle instance per connection required (two: prod database and test database). Despite our SOAP call referencing the report bundle using the prod datasource, it used the test datasource. Are there any steps to deterministically reproduce this?That's the trouble, I don't think so. It has only happened once, and I am pretty certain the soap call was correct. It was working with the correct connection fine, and then suddenly switched to the wrong connection without our doing anything. You could try to add the following lines to WEB-INF/log4j.properties, maybe the debug logs will give some clues on what's happeningThat's a very good idea, if it happens again I will at least check the logs, and perhaps we will also proactively enable debugging for a bit to see if there is anything untoward happening in Tomcat. If anyone comes across this forum post and feels that they have the same issue, please do post also so we can see if there is an rare issue being detected here. Thanks for your reply Lucian, btw; you and a couple of others are really keeping this forum going!
  3. Can anyone give me some clues on this? Thanks to the core team if they respond, but it would be nice to see some other people in the community help also. Any volunteers?
  4. If they are both enabled, then you likely have another problem. What do your Apache logs or on-screen warnings say? By the way, if you need help finding your apache config file (usually httpd.conf) then you will probably struggle with configuring Jasper Server. It is a steep learning curve, and as great as the software is, the help community is not particularly active.
  5. It is really not a good idea to edit the source code, as you can get yourself into a pickle unless you are certain you know what you are doing. I recommend you unpack it again, and don't edit it. Sorry, I should have said that the "php_flag" directive would go in an Apache config, not a php.ini - my fault. Your syntax for both keywords is fine for php.ini (so you can use those instead rather than changing your apache config). Run phpinfo() in a web page to make sure they have been understood by the server. Don't forget to restart your web server too.
  6. Set these, either in your virtualhost, or across your whole php.ini: php_flag register_globals on php_flag register_long_arrays on Standard disclaimer: your mileage may vary. See what warnings/notices are output by PHP, and respond accordingly. Btw rather than saying "the sample still won't run", it would be more useful to describe what error messages you are encountering, either on-screen on in the logs.
  7. Hi all We have a deployment of the stable version of Jasper Server running on Win2K3 R2, using the built-in installation of MySQL but a fresh installation of Apache Tomcat 5.5 (so it runs in a Windows service). We are relatively new to deploying reports in Jasper format. We deployed a PHP project last week, which uses SOAP calls to the server to generate a report and return a PDF. This has worked fine in testing and in live, but over the weekend, and this morning, the server exhibited some strange behaviour. We have a report bundle on the server, which points to a predefined (not a custom) datasource, but the server used another connection. We shutdown Tomcat, to verify that our live app was using this instance of Jasper server, and it turned out that it was. Strangely, when we brought Tomcat back up again, it started to use the correct connection. I am therefore wondering whether there is a bug in the way connections are pooled or cached? How would folks here go about debugging this? Is it worth our deploying version 3, and is that stable enough for production? Incidentally there is a predefined connection on the box to a different db (the db that Jasper was erroneously using) but we changed the password to it (so that any attempt to use it would fail) and this made no difference. I guess credentials are read into memory, so if they are re-used, they are not re-read from the server? Many thanks!
  8. Actually I've posted the workaround already, read it here if you're interested.
  9. I'd strongly advise you to get the PHP sample working if you want to get the web services approach working. We did, although the code appears to be written for PHP4 and so raises notices and requires a bit of enabling legacy stuff in php.ini. I've not heard of NuSOAP, I used the standard SOAP library in PEAR. Once you have that working, the rest is fairly plain sailing. You could indeed use the PHP-Java bridge, but we don't have a Java installation on our live web server, and in any case I much prefer having reporting functionality on a different server. One gotcha that we ran into was wanting to pass connection parameters in the SOAP request to be used with the report. It turns out that this, for the time being at least, is not implemented. However we worked out a reasonably elegant workaround, which I will describe here if anyone is interested.
  10. I think you're right, Lucian. I grilled him on it later, and extracted a confession that he may have been using the libraries locally, not via the web service. Meanwhile readers may be interested to see how I've solved this problem. My concern was that my reports would proliferate versions across each connection I want to use them with, and that I would have to write a script to delete old copies and to recreate new ones with a new JRXML file. In fact, the solution was easier than that. I created a JRXML file on Jasper Server, with a pathname like this: /reports/web/common/project/my-report Then, for each connection, I create report units that cross-reference this file, with each having the correct pre-defined data source set: /reports/web/conn1/project/my-report /reports/web/conn2/project/my-report /reports/web/conn3/project/my-report Now all I need to do is to refer to the correct pathname, which contains the connection name, and also if I need to update the core JRXML file, I can just republish the one file. Easy when you discover how B)
  11. Righty-ho, thanks for the clarification. Its strange, though, as my Java colleague says that he can pass a "connection object" to a Jasper library, so that an arbitrary JDBC connection can be used in preference to the datasource in the report, on the Jasper server. I'm not a Java person, but wonder whether studying the source code of whatever library he is using might yield some results? I am not keen to dig into this in too much detail, though, given that you have told me that what I'm trying to do would be very difficult.
  12. Edit: I forgot to thank you for your assistance - thanks very much. Your time is appreciated :D Oh dear, that's one of our biggest bugbears with Crystal that we're trying to fix! I'm glad there's a workaround though. Would you be so kind as to give me an idea how to set up such a custom datasource implementation in iReport, or is this more involved than adding special kinds of parameters to a report? If I get really stuck here, I think my alternative may run as follows (comments from all welcome). I'll have two main folders on the server: "reports" and "reports-compiled". Whenever I add a new report to the server, I will run a script to copy them to the compiled file, duplicating each one across the various connections I will need to use it with. The name of each can be set to "<report><connection>" so that the connection is easily specified in a SOAP call. Post edited by: halfer, at: 2008/05/02 17:23
  13. I've also tried running Wireshark on the TCP stream between iReport and the server, and tried what I believe iReport is sending to the server: Code:<request operationName="runReport"> <resourceDescriptor name="" wsType="reportUnit" uriString="/reports/test/hamp-test-0.1" isNew="false"> <label></label> </resourceDescriptor> <resourceDescriptor name="" wsType="datasource" uriString="" isNew="false"><![CDATA[/datasources/logweb_prod]]></resourceDescriptor> <argument name="USE_DIME_ATTACHMENTS"><![CDATA[1]]></argument> </request> Sadly that doesn't work either. I'll leave the project for a day and see if anyone here can give me the right syntax. Thanks again.
  14. Hi all I am currently writing a PHP plugin for the symfony web development framework to integrate with JasperServer. I'd like to do this across SOAP, rather than using the PHP-Java bridge. I've downloaded the PHP examples, and the Web Services guide, and have come to an impasse. We can generate a PDF report nice and easily using the following SOAP request: Code:<request operationName="runReport"> <resourceDescriptor name="" wsType="reportUnit" uriString="/reports/test/hamp-test-0.1" isNew="false"> <label></label> </resourceDescriptor> <argument name="USE_DIME_ATTACHMENTS"><![CDATA[1]]></argument> </request> However we would like to specify a datasource URI to go with that, so that we can run the report against several databases (dev, uat, prod etc). The WS Guide seems to suggest we need a resourceDescriptor with a wsType of "datasource", so we have tried this: Code:[code]<request operationName="runReport"> <resourceDescriptor name="" wsType="reportUnit" uriString="/reports/test/hamp-test-0.1" isNew="false"> <label></label> </resourceDescriptor> <resourceDescriptor name="" wsType="datasource" uriString="/datasources/logweb_prod" isNew="false"></resourceDescriptor> <argument name="USE_DIME_ATTACHMENTS"><![CDATA[1]]></argument> </request> This comes back with an error: Error message from report server: /datasources/logweb_prod is not a valid report so clearly it hasn't worked. Substantial searching in this forum hasn't revealed any examples. Can anyone shed any light? :S Thanks!
  15. Thanks Tony - the post immediately above yours *was* a dup - I edited it to remove the duplicate post, and it can be deleted. I think it was my using the preview feature that resulted in my message being posted twice.
  16. Post duplicated again - admin, help!! :angry: Post edited by: halfer, at: 2008/04/30 16:07
  17. Aha, I think this might solve it. I'll try to remember to post tomorrow, if both schedules fire correctly! :lol:
  18. Hi all I recently set up Jasper () on Windows Server 2003 R2, and set up two schedules on a single report, both of which are emailed to several people daily. The second one generated fine, the first one dumped this in the logs: Code:12:37:02,456 ERROR JDBCTransaction,JasperServerScheduler_Worker-1:67 - JDBC begin failed com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.io.EOFException STACKTRACE: java.io.EOFException at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1905) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2351) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2862) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1571) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1666) at com.mysql.jdbc.Connection.execSQL(Connection.java:2988) at com.mysql.jdbc.Connection.setAutoCommit(Connection.java:4913) at org.apache.tomcat.dbcp.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:331) Firstly, I believe this should have added an entry into the JasperServer Messages log, but it didn't. Should I report that as a bug? [url=http://www.jasperforge.org/index.php?option=com_joomlaboard&Itemid=&func=view&catid=10&id=20132]This poster seems to have had a similar problem of failed jobs not appearing in the Messages interface. Also, I think it may be an instance of [url=http://www.issociate.de/board/post/300245/Connection_problem_after_long_idle_periods.html]this connection problem, but the responses there make it seem that connections should not be held open for very long. Having searched here, I'm surprised that no-one's asked this question before. I will continue digging, and will post here again if I find anything. In the meantime, any ideas as to what I might change would be very welcome. Edit: one item of detail I forgot to mention was how I came to believe this might be a MySQL connection issue. The difference in time between the two reports is two minutes, and the first one fails; my theory is the first failure "wakes up" the database, and the second one therefore runs fine. Post edited by: halfer, at: 2008/04/30 15:21
  19. Alright Tony, thanks for letting me know. I should look forward to its inclusion, but for the time being I think we'll create/destroy multiple schedules using the PHP service. We could of course create a run of reports across several parameter sets, but this would require us to use our own scheduler, rather than the tried-and-tested scheduler in Jasper.
  20. (If the question was already asked, it's best to ask on the same thread, rather than to proliferate identical questions through the forum - IMO.) A quick google reveals this - any good? http://support.microsoft.com/kb/193888
  21. For the non-pro version, the path to the homepage is "/jasperserver/login.html", which posts to "j_acegi_security_check". Upon successful login this redirects to "/jasperserver/flow.html?_flowId=repoAdminFlow". I'm not sure where *.jsp fits into this. I would strongly suspect that you would need MySQL running to access this - certainly you do with the non-pro version. Is it not bundled with the server? With my version it runs by default in a DOS box (foreground task) so you have to play around a bit to get the bundled server to run as a service.
  22. Ah, I've no need to post again on this topic - a colleague helped me fix it. Read here: http://www.jasperforge.org/index.php?option=com_joomlaboard&Itemid=215&func=view&catid=8&id=39932#39932
  23. I came across this problem. The JasperServer available when iReport 2.0.5 is the latest incarnation comes with JasperReports 2.0.2. Update the JasperReports jar to the latest version (2.0.5 at the time of writing).
  24. I've got the same error when creating a cross-tab in iReport 2.0.5 and trying to deploy it to Jasper Server 2.1.0.1. I have to use the "compatibility" feature in iReport to downgrade the version recency of the XML generation for it to work (in fact I will write about this at more length in another post). For your situation, I think the XML being generated is not being understood by the server. Either avoid the use of the specific XML tags that the server doesn't understand, or (I don't know if this is possible) upgrade the reporting engine inside JasperServer. Could you start off with building a very trivial report that does nothing, then add in more elements until it refuses to load?
  25. Thanks Tony. Could the new system have a good search facility, and also show a good number of posts per page? You may already have chosen forum software, but if not, I am active in a community that uses FUD (http://fudforum.org/forum/) and whilst our (old) version is not bug-free, it does make the "community creation" process easy, and encourages people to respond (which of course is very useful with the peer assistance support model).
×
×
  • Create New...