PDA

View Full Version : Customize JSP Dashboard



jagiaz
10-17-2006, 12:21 AM
Hello,

I'm not new to Pentaho but ain't any java expert either, this should be something very simple.

I'm just trying to modify (following the instructions in the doc) the default sampleDashboard.jsp which comes with the PCI. So, I try to change a very simple thing (like a label) in the file: pentaho.war/jsp/SampleDashboard.jsp


But, after restarting pentaho (though I think it shouldn't be necessary) , i cannot see any of the changes I ve made. Same thing happens if I try to add a new jsp (for a dashboard). It seems that JBoss doesn't compile this jsp (new or modified) and create the necessary class (as far as I've read) in classes/org/apache/jsp/xxxx_jsp.class.

┬┐What's my problem? I don't know mucho about apache so i'm quite lost here... I hope someone can help.

Thanks a lot,
Javier

mbatchelor
10-17-2006, 10:25 AM
For it to recompile, JBoss needs to be pointing at a JDK (Java Development Kit), not the shipping JRE (Java Runtime Environment). Unfortunately, we cannot (due to licensing) ship the Java JDK - you'll have to download it directly from sun (http://java.sun.com). Be sure to get the latest 1.4.2.x and not the 1.5 version.

The JDK is (unfortunately) required because the JSP compiler is inside the file tools.jar (only shipped with the JDK).

If you're using the PCI from Windows, you'll additionally have to modify the start-pentaho.bat so that it doesn't fire up with the supplied JRE, but instead uses your newly installed JDK.

I hope this helps,

Marc

jagiaz
10-23-2006, 07:58 AM
Hello Marc,

Thank you for your answer. I had it with JDK 1.5 but i changed it to 1.4.2 and it seems it's not working. If I change let's say Home.jsp I can see the changes. But nothing happens when I change SampleDashboard.jsp. Could it be because the mapping in the web.xml?

Thank you.

Post edited by: jagiaz, at: 2006/10/23 15:04

mbatchelor
10-24-2006, 05:46 PM
If you're running the PCI, the start-pentaho.bat wants to use the supplied JRE for running the demo. You'll have to modify the file so that it points to your JDK.

I hope this helps,

Marc

jagiaz
10-24-2006, 10:48 PM
Hello,

I'm not using the PCI, T start pentaho from the jboss/bin/start.bat, and it points to my JDK 1.4.2. The problem seems to be that it doesn't find or use the java compiler for the jsp... i really don't know why.

I can answer any quesion, or make en test that you tell me, I really need to modify a dashboard.

Thanks,
Javier

frodriguez
11-02-2006, 03:03 PM
Escuse me Sirs:
Y have the same problem, somes jsp are compiled, but
.../default/deploy/pentaho.war/jsp/*.jsp are not compiled when they are modified.
{PCI} version

Some one can help us
Best regards

Fco Rodriguez

mbatchelor
11-02-2006, 06:58 PM
For the JSPs to be compiled, you must have a JDK, not a JRE. The tools.jar has to be able to be found by the server for JSPs to be able to be compiled.

Unfortunately, we can't distribute the JDK (Java Development Kit) due to licensing issues.

Take care,

Marc

frodriguez
11-06-2006, 09:46 AM
Dear Marc:
I try with JDK, but I have the same problem.
If i modify pivot.jsp. its result ok. generate pivot_jsp.class in
pentaho-demo\\jboss\\server\\default\\work\\jboss.web\\locathost\\...
pentaho\\org\\apache\\jsp\\jsp\\Pivot_jsp-class.

but the class in pentaho-demo\\jboss\\server\\default\\deploy\\pentaho.war\\WEB-INF\\classes\\...
org\\apache\\jsp\\jsp\\Pivot_jsp-class, its not update, has the same date
(old date).
SampleDashboard_jsp.class is only in the last directory and all of its jsp are not compiled updated.
Of course i have jdk 1.4.2....
Thanks in advance

Francisco

jagiaz
11-06-2006, 10:51 AM
Hello Francisco,

From your name I think you might be spanish or at least spanish speaking. It seems we are facing the same problem.

Would you mind to email me at: javier.gimenez@stratebi.com so we coulds share some info, or problems, or whatever about pentaho?

Best regads (saludos),
Javier

mbatchelor
11-15-2006, 06:26 PM
Oh, I see.

The problem is that we pre-compile the JSPs so that people without a JDK can run the platform.

The simplest solution is to do the following (because you have a JDK):

1- Stop your server

2- Delete the folder pentaho-demo / jboss / server / default/ deploy/ pentaho.war/ WEB-INF/ classes /org / apache

(Spaces added for formatting purposes)

3- Restart your server.

You should be all set now.

Sorry, I didn't understand where things were going wrong. Also, I was on vacation for several days celebrating my 20th wedding anniversary with my wife, so I'm just now catching up.

Take care,

Marc

jagiaz
11-16-2006, 06:47 AM
Thank you Marc,

I had already solved it. Yeah, the problem was in not finding the precompiled classes. You can just avoid to map them in web.xml, and it works perfectly. Actually we have done some nice dashboards, it would be great to hace many more charts from JFreeChart of course, but it's great anyway.

Congratulations for you wedding!

Regards,
Javier

Post edited by: jagiaz, at: 2006/11/16 10:50

mbatchelor
11-16-2006, 08:41 AM
Thanks.

One of the things we are missing here at Pentaho is use cases of the product. Would you mind detailing for the forum here how you're using Pentaho and with what kind of data?

It would help us, and help others understand what you're doing. It would be really cool if you could upload a screen shot of your dashboards too - assuming the data could be cleansed or obscured in some way.

We appreciate all feedback, and we especially appreciate different use cases of Pentaho.

Thanks for taking the time, if you have it available!

jagiaz
11-16-2006, 01:49 PM
Hello Marc,

We're actually your spanish certified partner, and we have used pentaho successfully in a couple of places, and we are also right now using it in new and quite important customers.

We have an online demostration of pentaho build by ourselves for comercial purposes, and in a week or two it's gonna be accesible for the public. It will incluide some examples of our dashboards and also de use of google maps, we will contact Pentaho so you could view it, as we did with our last demo online.

Keep developing such a great product, and we will keep generating services around it ;)

And, as a personal complain, please hace some security in the open source version! that's a must have for many customers, and something that really keeps many people apart from pentaho who otherwise would hace adopt it.

Best regards.

mbatchelor
11-16-2006, 07:50 PM
Thanks for the feedback!

Keep in mind that the only way we can sustain a company is to charge for something. That something is currently enterprise features (security, clustering, RDBMS Repository for solutions, and such), support, indemnification, and subscription services.

thejavafreak
11-24-2006, 03:34 AM
jgimenez wrote:


I had already solved it. Yeah, the problem was in not finding the precompiled classes. You can just avoid to map them in web.xml, and it works perfectly.
What part do I need to eliminate in web.xml? It still doesn't work? Do I need to configure something from tomcat?

Thanks in advance

jagiaz
11-24-2006, 07:34 AM
You shouldn't need to touch tomcast configuration. Just, add those two tags regiestering the jsp file and the url as a servlet in web.xml and yo u should be able to acces you jsp via pentaho.

Hope it helps.

Javier
StrateBI

dgambin
03-06-2007, 06:39 AM
Hi,
I am also trying to customize a dashboard. I am using PCI that works ok with my custom data stored in mysql. I don't know how to modify the sampledashboard.jsp (or create another .jsp) to be compiled correctly. I tried using the steps described here but without a success. First I have downloaded and installed JDK 1.4.2, put it in %PENTAHO_PATH%\jdk and modified start-pentaho.bat accordingly (JAVA_HOME and PATH). Nothing happens if I modify and save sampledashboard.jsp. Then I tried to stop the server, delete ...\pentaho-demo\jboss\server\default\deploy\pentaho.war\WEB-INF\classes\org\apache folder, and restart the server but then I get errors of incompletely deployed packages and the server won't start...

RobertFolkerts
03-06-2007, 04:09 PM
I have installed the JDK 1.4.2_13 from Sun. I removed the jsp files as described above. At server startup, I see
===============================================================================
.
JBoss Bootstrap Environment
.
JBOSS_HOME: C:\pentaho_1.2\pentaho-professional\jboss\bin\..
.
JAVA: C:\j2sdk1.4.2_13\bin\java
.
JAVA_OPTS: -Dprogram.name=run.bat -server -Xms128m -Xmx512m -XX:MaxPermSize=2
56m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600
000
.
CLASSPATH: C:\j2sdk1.4.2_13\lib\tools.jar;C:\pentaho_1.2\pentaho-professional\
jboss\bin\\run.jar
.
===============================================================================

As an aside, is there a reason for the double \ before run.jar in the CLASSPATH. I also added -server to the JAVA_OPTS, is there are reason not to do this? I'm a novice at J2EE, so any insights about these issues would be helpful.

Tools exists as described on the classpath
C:\temp>dir C:\j2sdk1.4.2_13\lib\tools.jar
Volume in drive C has no label.
Volume Serial Number is ECEC-44C6

Directory of C:\j2sdk1.4.2_13\lib

10/18/2006 11:47 AM 5,082,829 tools.jar
1 File(s) 5,082,829 bytes
0 Dir(s) 38,092,509,184 bytes free

But when I run the startup script, I get the following...
13:53:40,558 ERROR [URLDeploymentScanner] Incomplete Deployment listing:

--- Incompletely deployed packages ---
org.jboss.deployment.DeploymentInfo@76fd931c { url=file:/C:/pentaho_1.2/pentaho-
professional/jboss/server/default/deploy/pentaho.war/ }
deployer: MBeanProxyExt[jboss.web:service=WebServer]
status: Deployment FAILED reason: java.lang.ClassNotFoundException: org.apache
.jsp.jsp.PivotError_jsp
state: FAILED
watch: file:/C:/pentaho_1.2/pentaho-professional/jboss/server/default/deploy/p
entaho.war/WEB-INF/web.xml
altDD: null
lastDeployed: 1173210817042
lastModified: 1173198602823
mbeans:

Attempting to view my webserver produces a 404 Error.

The only change between working and not working was removing the directory of jsp pages. ( e.g. restoring the directory from the recycle bin allows the server to run, but I still can't see any changes in the jsp pages.

Robsteranium
04-05-2007, 11:50 AM
I'm having the same problem as described in the post above. I'm also using the pci, jdk, and a mysql data source that appears to work in other action sequences (e.g. pivoting).

If I remove the jsps the boot fails as above. Deleting the folder containing the pci class files also caused the boot fail (even if the jsps are in place).

The server won't create of a class from the jsp file I created. I would expect that on boot the app server should convert the jsps into classes - is this true?

Peculiarly the part about making changes to web.xml isn't documented in the dashboard building guide.

Perhaps I should be editting the web.xml through eclipse? More generally I've not had any success compiling the pentaho deployment in eclipse. I've been using the design studio to edit action sequences and an html editor to change web.xml.

Any ideas?

Robsteranium
04-18-2007, 08:34 AM
The above problem didn't occur once I'd written my jsp properly. I would advise a thorough fine-tooth-combing of the jsp!

Annoyingly I only ever received class-not-found errors - i.e. the stack trace gave no indication as to what was wrong with my jsp - I just had to keep trying! Now that my jsp is better formed I've been able to find out which lines in the jsp are throwing errors but I'll save those woes for another thread.

Apparently the server (at least the pci jboss) doesn't need to compile a class for the jsp anyway:
http://forums.pentaho.org/showthread.php?t=27487

I still don't understand: how or why would you compile the jsp?

sidarta.omar.semprebon
12-30-2007, 05:13 PM
My experience is that you have to:


1. Stop the server;

2. Delete content from folder: C:\pentaho-demo\pentaho-demo\jboss\server\default\tmp\;

3. Delete folder: C:\pentaho-demo\pentaho-demo\jboss\server\default\work\jboss.web;

4. Close all browsers that may be open;

5. Restart the server;

6. Open a browser and start pentaho application.

Regards,
Sidarta Omar Semprebon da Silva.