1 2 Previous Next 28 Replies Latest reply: Dec 29, 2006 3:27 PM by twills Go to original post RSS
  • 15. Re: Example of customizing a report in Reports Server
    jommen

    It put me one step closer to the goal. Now I'm getting this error, so it looks like there are changes that I need to make to the RDLs.




    javax.servlet.ServletException: com.bladelogic.mfw.util.BlException: Could not find RDL for reportlet id + 10001 and filter value 1

  • 16. Re: Example of customizing a report in Reports Server

    This report is set up to use "filter-driven RDLs". This means that the RDL used to generate the report is selected based on the value chosen by the user for a particular filter. In this case, looking at the entry being made in the rpt_reportlet table, the filter in question is filter id 29, which is the OS filter. The value in the rdl column of the rpt_reportlet entry is the base name of the RDL, or IQOQ/IQOQ. To this is appended the choice selected by the user for the OS filter. So e.g., if the user selects Linux as the OS, then Reports will expect an RDL named IQOQ_Linux.rdl in the /Tomcat/webapps/scopeserver/WEB-INF/rdl/en/IQOQ directory on the Reports server. So I suggest you check this directory and verify that the expected RDLs are there and are named appropriately.

  • 17. Re: Example of customizing a report in Reports Server
    jommen

    RDL is there, and is named appropriately. Based on that error, I don't believe that it's even finding the RDL.

  • 18. Re: Example of customizing a report in Reports Server

    What is the full list of RDLs which appear in the /Tomcat/webapps/scopeserver/WEB-INF/rdl/en/IQOQ directory on the Reports server?

  • 19. Re: Example of customizing a report in Reports Server
    jommen

    Here are the RDLs, four in all. I've made changes to them in the process of troubleshooting.





    someserver1128% ls -l

    total 616

    -rw-rw-rw- 1 0 0 93203 Dec 28 13:12 IQOQ_Windows.rdl

    -rw-rw-rw- 1 0 0 93203 Dec 27 17:58 IQOQ_Windows.rdl.dec27

    -rw-rw-rw- 1 0 0 36118 Dec 28 13:07 IQOQ_Windows.rdl.dec28

    -rw-rw-rw- 1 0 0 91484 Sep 21 2005 iqoq_os.rdl (original from PK).rdl.old

    someserver1128% pwd

    //someserver1128/c/Program Files/BladeLogic/Reports/Tomcat/webapps/scopeserver/WEB-INF/rdl/en/IQOQ

    someserver1128%




    Here's what shows up in the log when I click on the report


    54.24.140.199 - - "GET /BladeLogicReports/BladeLogicReports?conttype=0&action=runInstance&report

    letid=0&filter_29=1&filter_30=someserver05&insmalldialog=&exportfmt=&expandedgroups=11001&archivedreptname=&operation=copyPane

    l&instanceid=-1&reportsettingsstate=show&sequenceid=0&overwriteconfirmed=&name=&desc=&repttype=10001&showingloadingmsg=true HTTP/1.1" 500 4145



    Any idea why it woudn't be able to find the RDL?

  • 20. Re: Example of customizing a report in Reports Server

    Actually, I just remembered that the filter-driven RDL functionality changed a bit in 6.3.4 in order to support internationalization/localization. You need an entry in the rpt_filter_driven_rdl_xref table as well. This is where the name of the RDL is looked up based on the filter value. So in your case, you want to run the following SQL:

     

    insert into rpt_filter_driven_rdl_xref(reportlet_id, filter_value, rdl) values(10001, '1', 'IQOQ/IQOQ_Windows.rdl');

     

    Also, you need to change the rpt_reportlet insert SQL to insert null in the rdl column.

     

    The other thing to be aware of is that if you want this report to work for anything other than Windows servers, then you will need RDLs for the other OSs, and corresponding entries in the rpt_filter_driven_rdl_xref table. And if this report is only supposed to work on Windows servers, then there is no need to use filter-driven RDLs at all. You can just specify the full RDL name in the rdl column in the row in the rpt_reportlet table.

  • 21. Re: Example of customizing a report in Reports Server
    jommen

    Ah, thanks for posting that! I followed your instructions, and that error is gone (finally!)




    I'm getting a different error now, but it's clearly a problem with the path in the RDL:




    C:\Program Files\BladeLogic\Reports\Tomcat\webapps\scopeserver\WEB-INF\rdl\..\..\..\..\..\..\..\data\IQOQ\someserver05.xml (The system cannot find the path specified)

  • 22. Re: Example of customizing a report in Reports Server
    jommen

    This path problem is more serious than I expected. I've tried every combination I could come up with, to no avail. The author of the original RDL used "..\" to move down the directory tree.

     

    Windows 2003 doesn't like that.

     

    However the path can't be stated explicitly, as the reporting engine prepends the URL with the originating directory.

     

    How do you get around this?

     

    Here's the line from the original RDL:

    <rdl:data name="overviewData" readonly="false">

    <rdl:xmlsource url="{param.Server('../../../../../data/IQOQ/','.xml','')}" rowNode="//Configuration/Overview/record">

    <rdl:return>

    <rdl:column name="hostName" type="string" fieldPath="HOSTNAME"/>

    <rdl:column name="configCaptureDate" type="string" fieldPath="../../Capture_Date"/>

    <rdl:column name="auditJob" type="string" fieldPath="AUDIT_JOB"/>

    </rdl:return>

    </rdl:xmlsource>

    </rdl:data>

     

     

    Here's the error I'm getting:

    C:\Program Files\BladeLogic\Reports\Tomcat\webapps\scopeserver\WEB-INF\rdl\..\..\..\..\..\..\..\data\IQOQ\crse0dr05.xml (The system cannot find the path specified)

  • 23. Re: Example of customizing a report in Reports Server

    I'm not convinced that this is a Windows 2003 issue. Why do you think that? The relative path in the RDL looks correct. The odd thing is that the error message seems to have too many "\.." components in the path. In the RDL, there are 5 of them, but in the error message, there are 7 of them. I really can't explain that. Does the crse0dr05.xml file in fact exist in the /data/IQOQ directory though?

  • 24. Re: Example of customizing a report in Reports Server
    jommen

    Sorry about the confusion -

     

    The code snippet is the original; the installed RDL reflects seven hops, which is how many are required to get to the proper folder. The error I posted reflects that. I also tried it with five hops, but it didn't make a difference; I was getting the same error, but with five "..\" in the error instead of seven.

     

    This morning it started throwing a completely different error:

     

    "C:\Program Files\BladeLogic\Reports\Tomcat\webapps\scopeserver\WEB-INF\rdl (Access is denied)"

     

    Isn't it strange that it would complain about permissions, when it was clearly reading the RDL at 6pm yesterday?

  • 25. Re: Example of customizing a report in Reports Server

    John, assuming that the IQOQ data files are being written in C:\Program Files\BladeLogic\Reports\data\IQOQ, I believe that the relative path with the 5 hops is the correct one. The out of box Server Configuration reports work the same way. You could try running one of those and see if it works. You will have to run the os_config.nsh script job first to collect some data for these reports to operate on though.

     

    As far as the permissions problem, I am not sure about that. Definitely sounds like something environmental. Maybe try rebooting the Reports server?

  • 26. Re: Example of customizing a report in Reports Server
    jommen

    Still doesn't work I'm afraid.

     

    One thing that I noticed is that it may not be a permissions issue. Looking at the scopeserver log, I see that it's complainining about a "file not found."

     

    This report was created prior to 6.3.4. Are there changes that need to be made to accomodate internationalization in 6.3.4? Looking at the log, it implies that Java is trying to open a directory as a file. How is the path to "C:\Program Files\BladeLogic\Reports\Tomcat\webapps\scopeserver\WEB-INF\rdl" determined?

     

    The log file states:

    "java.io.FileNotFoundException: C:\Program Files\BladeLogic\Reports\Tomcat\webapps\scopeserver\WEB-INF\rdl (Access is denied)"

     

    This morning I've done the following:

     

    1 - Removed the OS filter based on the steps you posted last night. I also had to insert a NULL into the filter_id of the rpt_reportlet table.

    2 - Verified that other reports do work.

    3 - Rebooted the reporting and the app server.

    4 - Changed the RDL, per the previous post.

    5 - Re-ran the jython script against a batch of servers, just in case there was a problem with the target I chose.

  • 27. Re: Example of customizing a report in Reports Server
    jommen

    What about "BladeLogicReportsRDL_en.properties"? Should there be changes to that file?

     

    I've noticed that my RDL is very VERY similar to the RDL named "ServerConfiguration_Windows.rdl". And there are extensive entries in "BladeLogicReportsRDL_en.properties" that correspond to lines in that RDL. Here's an example of one of these lines:

     

    "ServerConfiguration_Windows.Type=Type"

     

    Do I need to create entries like that for my new RDL?

  • 28. Re: Example of customizing a report in Reports Server

    The entries you are seeing for the server configuration reports are used to localize the actual content of those reports. So if, e.g., you are running the report in a French locale, you'll see the report titles and column headers, etc., in French. You don't need to worry about that for your IQOQ report. It certainly is not related to the problems you are experiencing.

1 2 Previous Next