XSQL and FOP 0.20.x

Hi,
Trying to use the latest XSQL with FOP 0.20.3. The error message:
XSQL-017: Unexpected Error Occurred
java.lang.NoSuchMethodError: org.apache.fop.apps.Driver: method buildFOTree(Lorg/w3c/dom/Document;)V not found
buildFOTree method does not exist anymore (it existed until FOP 0.19.x), instead Driver.run is doing all the parsing and building the document tree.
When can we expect a working version of XSQL with current FOP versions.
Many thanks,
Ashkan.

the file xsqlserializers.jar contains the FOP serializer. In the XSQL documentation you can find the versions of FOP for which it can be used.
You can adapt this serializer to work with the latest version of FOP.

Similar Messages

  • XSQL and FOP

    I am trying to set up FOP with XSQL on Oracle 9iAS so I can run the emp.xsql example. I have downloaded the FOP 0.14 version and included the xsqlserializers.jar, fop_bin_0_14_0.jar and w3c.jar in the wrapper.classpath.
    I was expecting pdf file when I try to bring up the xsql page but instead I am getting xml in the browser. Is there anything else that needs to be done? Can some one post the steps of configuring FOP with XSQL?
    Thanks.

    Doesn't work. Here is what I did:
    I am running Oracle 9iAS. I downloaded XDK for Java 9.0.2B and I replaced the $OH/xdk/lib/*jar with the new xdk's lib/*jar.
    Then I downloaded Fop-0.19.0-CVS-bin.tar.gz and copied the fop.jar to the $OH/xdk/lib/ directory.
    I added following lines to the xml.properties file:
    wrapper.classpath=/u01/app/oracle/product/9iAS/xdk/lib/xsqlserializers.jar
    wrapper.classpath=/u01/app/oracle/product/9iAS/xdk/lib/oraclexsql.jar
    wrapper.classpath=/u01/app/oracle/product/9iAS/xdk/lib/fop.jar
    When I tried the emp.xsql with the emptablefo.xsl I still the xml result in the browser instead of PDF.
    Here is what I see in browser
    <?xml version="1.0" encoding="UTF-8" ?>
    - <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
    - <fo:layout-master-set>
    - <fo:simple-page-master master-name="first" page-height="29.7cm" page-width="21cm" margin-top="1cm" margin-bottom="2cm" margin-left="2.5cm" margin-right="2.5cm">
    <fo:region-body margin-top="3cm" />
    </fo:simple-page-master>
    </fo:layout-master-set>
    - <fo:page-sequence master-name="first">
    - <fo:flow flow-name="xsl-region-body">
    <fo:block font-size="24pt" font-family="Garamond" line-height="24pt" space-after.optimum="3pt" font-weight="bold" start-indent="15pt">Total of All Salaries is $29025</fo:block>
    - <fo:block border-width="2pt">
    - <fo:table>
    <fo:table-column column-width="4cm" />
    <fo:table-column column-width="4cm" />
    ..

  • Xsql and fop - showing blank pdf in browser

    I am using the following configurations:-
    Apache 1.3.27 webserver,
    Apache Jserv 1.1.1
    xdk java version 9.2.0.5.0
    fop 0.16.0
    Adobe acrobat 4.0
    All other examples are working .
    The problem is
    when i am trying to access ../xsql/fop/emptable.xsql
    i am getting blank page (nothing is coming on the
    browser). But I think browser is loading acrobat
    because i can see the accrobat's flash page for a
    second.
    I think nothing wrong with acrobat , because i used to
    see pdf files from internet
    thanks in advance

    I am using the following configurations:-
    Apache 1.3.27 webserver,
    Apache Jserv 1.1.1
    xdk java version 9.2.0.5.0
    fop 0.16.0
    Adobe acrobat 4.0
    All other examples are working .
    The problem is
    when i am trying to access ../xsql/fop/emptable.xsql
    i am getting blank page (nothing is coming on the
    browser). But I think browser is loading acrobat
    because i can see the accrobat's flash page for a
    second.
    I think nothing wrong with acrobat , because i used to
    see pdf files from internet
    thanks in advance

  • How to: XDK10 and FOP 20.5 - this works

    Hi All
    Let me share with you all how to get XDK 10 and FOP 20.5 working. Below are all the versions of files that you require:
    XDK 10
    I use all the .jar files from the /lib directory
    FOP 20.5
    fop.jar
    avalon-framework-cvs-20020806.jar
    batik.jar
    xalan-2.4.1.jar
    xercesImpl-2.2.1.jar
    The next thing is that I rewrote the xsqlserializer.jar file and here is the code:
    package oracle.xml.xsql.serializers;
    import org.w3c.dom.Document;
    import org.apache.fop.messaging.MessageHandler;
    import oracle.xml.xsql.XSQLPageRequest;
    import oracle.xml.xsql.XSQLDocumentSerializer;
    import org.apache.fop.apps.Driver;
    import org.apache.avalon.framework.logger.Logger;
    import org.apache.avalon.framework.logger.ConsoleLogger;
    * Tested with the FOP 0.20.3RC release from 19-Jan-2002
    public class XSQLFOPSerializer implements XSQLDocumentSerializer {
    private static final String PDFMIME = "application/pdf";
    public void serialize(Document doc, XSQLPageRequest env) throws Throwable {
    try {
    // First make sure we can load the driver
    Driver FOPDriver = new Driver();
    // Tell FOP not to spit out any messages by default.
    // You can modify this code to create your own FOP Serializer
    // that logs the output to one of many different logger targets
    // using the Apache LogKit API
    Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO);
    MessageHandler.setScreenLogger(logger);
    FOPDriver.setLogger(logger);
    // Some of FOP's messages appear to still use MessageHandler.
    MessageHandler.setOutputMethod(MessageHandler.NONE);
    // Then set the content type before getting the reader/
    env.setContentType(PDFMIME);
    FOPDriver.setOutputStream(env.getOutputStream());
    FOPDriver.setRenderer(FOPDriver.RENDER_PDF);
    FOPDriver.render(doc);
    catch (Exception e) {
    // Cannot write PDF output for the error anyway.
    // So maybe this stack trace will be useful info
    e.printStackTrace(System.err);
    The above defnitely works for me and should work for you too. Think of it as an early christmas present.
    Best wishes
    Richard

    Hi, richardgossow
    I used the similar code as yours and it worked in Jdev10.1.3.0.0 and ias 10.1.3.1.for FOP 0.20.5.
    WhenI upgrade my Jdev from 10.1.3.0.0. to 10.1.3.3.0.4517, it still worked in Jdeveloper.
    However, when I deployed the latter to ias 10.1.3.1 on Windows (64bit), it failed with
    Oracle XML Developers Kit 10.1.3.1.0 - Production
    XML-25022: Cannot load serializer class
    Do you and anyone know why?
    Message was edited by:
    bsmt

  • XSLT and FOP in a 1.3 environment

    I've just set up a small proof of concept XSLT and FOP engine under the new JVM.
    But now I have to translate that back to a 1.3 environment for implementation and production.
    There were two things that I noticed. Java 5.0 = simple as hell. Java 1.3 = hunt the apache classes.
    Okay, I recognise that with each step forward, Sun is likely to provide their own concrete implementations of functionality we've come to expect since the last release.
    Can anyone out there give me a little advice on how to go about setting up XSLT and FOP in a 1.3 environment? I've tried importing a whole range of apache jars and still find I'm short on things like "org.apache.log.Logger".
    What is the bare minimum that I need?

    I have a feeling that I've been wasting everybody's time...
    It was not of course the FOP code that relied on 1.5 as several of you pointed out. The javax transformation packages that were imported into our environment were from the 1.5 when they should have been from the earlier release, hence the StringBuilder hang up.
    Having now made sure we have the right code in the right place, gues what; it works.
    Apologies for the confused and confusing nature of my posts. If it is any consolation, for whatever reason, building environments within which code should run is a personal bugbear and the one thing likely to make me throw my hands up in despair.
    Thanks anyway. I'll distribute some dollars on no particular basis.

  • XSQL and Packaged Procedure

    I've been reading thru the postings for XSQL and read a couple of references on how to get an out variable from a stored procedure. I read this thread from 3/31:
    http://technet.oracle.com:89/ubb/Forum11/HTML/001444.html
    Anyway, I followed the advice and I get the following error message:
    ORA-06571: Function CHECK_USER does not guarantee not to update database
    Did some research and found that I would need to create a PRAGMA in my function, which would need to be packaged. I did that, but the function would not compile because it would not fulfil the pragma. Below is the procedure I am trying to run, the wrapper function, and the XSQL source. Any ideas?
    Thanks
    Procedure
    Procedure check_user( inSiteID varchar2,
    v_userid number default null,
    inExtID varchar2 default null,
    v_return out varchar2)
    AS
    ParamIsNull EXCEPTION;
    invalid_data EXCEPTION;
    v_errmsg varchar2(200);
    v_count number := 0;
    BEGIN
    If v_userid Is Null AND inExtID Is Null Then Raise ParamIsNull; End If;
    If v_userid Is Not Null AND inExtID Is Not Null Then Raise ParamIsNull; End If;
    If v_userid Is Not Null Then
    SELECT COUNT(1) INTO v_count FROM USERS WHERE site_id=inSiteID and USERID = v_userid;
    If v_count = 0 then
    v_errmsg := '0, UserID Not Found';
    raise invalid_data;
    Else
    v_return:=('1');
    End if;
    End If;
    If inExtID Is Not Null Then
    SELECT COUNT(1) INTO v_count FROM USERS WHERE site_id=inSiteID and ext_uid = inExtID;
    If v_count = 0 then
    v_errmsg := '0, External ID Not Found';
    raise invalid_data;
    Else
    v_return:=('1');
    End if;
    End If;
    EXCEPTION
    WHEN ParamIsNull THEN
    v_return:=('0,1 Parameter Expected');
    WHEN invalid_data THEN
    v_return:=v_errmsg;
    END check_user;
    Function
    CREATE OR REPLACE PACKAGE DON AS
    FUNCTION CHECK_USER (siteid IN VARCHAR2, userid IN NUMBER, extid IN VARCHAR2)
    RETURN VARCHAR2;
    PRAGMA RESTRICT_REFERENCES (CHECK_USER, WNDS);
    END DON;
    CREATE OR REPLACE PACKAGE BODY DON AS
    FUNCTION CHECK_USER (siteid IN VARCHAR2, userid IN NUMBER, extid IN VARCHAR2)
    RETURN VARCHAR2 IS v_return VARCHAR2(200);
    BEGIN
    OTS_SCOPUS_PACK.CHECK_USER(siteid, userid, extid, v_return);
    RETURN v_return;
    END;
    END DON;
    XSQL Source
    <?xml version="1.0"?>
    <xsql:query xmlns:xsql="urn:oracle-xsql" connection="mvdv">
    select don.check_user('{@siteid}', {@userid}, '{@extid}') from dual
    </xsql:query>

    Your 'DON.CHECK_USER' function has a RESTRICT_REFERENCES pragma but it calls 'OTS_SCOPUS_PACK.CHECK_USER' which must also have a RESTRICT_REFERENCES pragma.
    All functions/procedures that are called directly or indirectly by 'DON.CHECK_USER' need to have a RESTRICT_REFERENCES pragma to guarantee that they do not write to the database or to a package.
    You cannot just write a wrapper function and apply the pragma to it.
    Good luck!
    null

  • Server running xsql and JSP

    I made a xsql file (sql in xml file) and I want to deploy it. I have made JSP files too.
    Which server can run xsql and JSP files?
    Oracle 8.1.6 can run xsql and JSP files?
    Thank you

    Check out the [MIMES] section of webtogo.ora file which is located in %JDEVHOME%\lib. There is an entry which defines the handler for .xsql files (which in this case is the XSQL Servlet (oracle.xml.xsql.XSQLServlet). Same goes for jsps. You can run this on any Java enabled web server.
    The version of OAS which will provide this functionality is the soon expected 4.0.8.2

  • Printing with xsql and css or xsl and fop

    How to incorporate css or css2 with xsql?
    I want some sample files. What is FOP? How can we use it for printing and print view

    Thanks for your reply. I know FOP. How to run it with tomcat3.2 and xsql?
    I already onto css1 and css2. XSLT stylesheets are working fine for me. But for taking print outs using the paged media with css2 i require some help. Currently I am reading Oracle XML Applications by Steve Muench from o'reilly.
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Steven Muench ([email protected]):
    See the XSQL Servlet examples. Most of the demos have XSLT stylesheets that generate HTML which includes references to CSS stylesheets.
    FOP is the Apache Formatting Object Processor.
    See the XSQL Release notes for information on using FOP with XSQL Pages for rendering PDF files from database queries.<HR></BLOCKQUOTE>
    null

  • OC4J and FOP

    Has anyone got FOP working on OC4J? I have compiled the FopServlet that comes with the download. It does not render a PDF just a blank webpage. Maybe someone else has seen this error?
    Thanks,
    Tom Henricksen

    Here's an excerpt from my j2ee/home/config/application.xml file which should give you some idea as to which jars to use
         <!-- XSQL Server Pages and Formatting Objects - PDF -->
         <library path="../../../lib/xsu12.jar" />
         <library path="../../../lib/oraclexsql.jar" />
         <library path="../../../lib/xsqlserializers.jar" />
         <library path="../../../lib/xmlparserv2.jar" />
         <library path="../../../../../../JLib/Apache/fop-0_16_0/fop.jar" />
         <library path="../../../../../../JLib/Apache/fop-0_16_0/lib/w3c.jar" />

  • XSQL and BEA Weblogic 6.1

    I spent a lot of time trying to figure out how to configure
    the XSQL servlet to run on BEA Weblogic 6.1
    It is really simple once you understand that you should work
    off expanded directory instead of trying to get a .war or .ear
    file uploaded.
    I decided to give my explanation to help others...
    This works with the current XDK (9.0.2.0.0D) on OTN and I got it
    running on Windows 2000 and/or Solaris.
    I based these instructions on Steve Muench for
    "ANN Deploy Oracle XSQL Pages to OC4J" off the OTN web site.
    1) get the latest xdk_java off the OTN web site.
    2) create a directory (or subdirectory) named xsql (to hold the entire application
    3) create /xsql/META-INF
    /xsql/WEB-INF
    /xsql/WEB-INF/lib
    /xsql/WEB-INF/classes
    structure to hold the XSQL servlet
    4) create a /xsql/META-INF/application.xml with the following code:
    <!DOCTYPE application PUBLIC '-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN'
    'http://java.sun.com/j2ee/dtds/application_1_2.dtd'>
    <application>
    <display-name>Oracle XSQL Servlet</display-name>
    <description>Oracle XSQL Servlet</description>
    <module>
    <web>
    <web-uri>xsql.war</web-uri>
    <context-root>xsql</context-root>
    </web>
    </module>
    </application>
    5) create the file /xsql/WEB-INF/web.xml with the following content
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">
    <web-app>
    <servlet>
    <servlet-name>oracle-xsql-servlet</servlet-name>
    <servlet-class>oracle.xml.xsql.XSQLServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>oracle-xsql-servlet</servlet-name>
    <url-pattern>*.xsql</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>oracle-xsql-servlet</servlet-name>
    <url-pattern>/xsql/*</url-pattern>
    </servlet-mapping>
    </web-app>
    6)extract the xdk_java (that you copied from the OTN) on a temporary directory. (/otn)
    7) copy the following files (they are in the /otn/lib subdirectory) into /xsql/WEB-INF/lib
    oraclexsql.jar
    xsqlserializers.jar
    xmlparserv2.jar
    xsu12.jar
    8) copy /otn/xdk/admin/XSQLConfig.xml to xsql/WEB-INF/classes
    9) copy the entire directory and subdir /otn/xdk/demo/java/xsql to /xsql/demo
    10) no need to create a war or ear file as Weblogic will work better from the expanded directory
    anyway and it is simpler to implement.
    11) Now you need to copy that entire directory structure /xsql over to the Weblogic Application Server
    config/domain-name/applications area so in my case it is
    /bea/wlserver6.1/config/your_domain/applications/xsql
    12) If Weblogic is running in development mode, it should deploy and load the servlet automatically.
    If it is running in production mode, then we would need to restart it.
    13) You should be able to test this with http://your_host:7001/xsql/demo/index.html
    Any URL that specifies the /xsql will then be treated by the
    XSQL Servlet.
    It works for me...

    Hi Denis,
    I followed your procedure to deploy XSQL Servlet on WebLogic 6.1. First I deployed as expanded directory structure although I turned 'Auto Deployed Enabled' flag to on for my domain, WebLogic couldn't pick up the application. Then I tried to create ear application and deployed it (In your message you are saying that don't need to create ear or war, you mean this is not just a necessity or it never could be deployed as ear/war files). I saw on the as deployed on console but when I tried the http://myhost:7001/xsql/demo/index.html, I got the following error message.
    Oracle XDK Java 9.2.0.2.0 Production
    XSQL-013: XSQL Page URI is null or has an invalid format.
    Oracle XDK Java 9.2.0.2.0 Production
    XSQL-013: XSQL Page URI is null or has an invalid format.
    Can you help me to trouble shoot this problem? Thank you very much
    Deha Peker

  • XSQL and insert

    This may sound like a dumb question but I can't figure out how to associate the xml doc with the xsql doc to do an insert. Here are my files:
    XSQL - filename custins.xsql
    <?xml version="1.0" ?>
    <xsql:insert-request table="CUSTOMERS_OV" connection="dev7" xmlns:xsql="urn:oracle-xsql"/>
    XML - No file name, genned on the fly in javascript
    <?xml version='1.0'?>
    <ROWSET><ROW>
    <CUST_NO>1</CUST_NO>
    </ROW></ROWSET>
    I call custins.xsql as a submit from a form. The xml is dynamically created and I pass it as a parameter, i.e.
    http://localhost:7070/custins.xsql?docxml=<?xml version='1.0'?><...etc>
    What I get when I do this is:
    <?xml version="1.0" ?>
    <xsql-status action="xsql:insert-request" result="No posted document to process" />
    Can anyone tell what I'm doing wrong?
    Thanks,
    Lewis
    null

    Got it figured out. I was using method="get" while debugging and xsql expects it to be post.
    Now I'm getting:
    <?xml version="1.0" ?>
    - <xsql-error action="xsql:insert-request">
    <message>Exception ' The XML element tag 'DocXml' does not match the name of any of the columns/attributes of the target database object.' encountered during processing ROW element 0All prior XML row changes were rolled back. in the XML document.</message>
    </xsql-error>
    Which I'm assuming means that it wants to parse out the parameters instead of me making an xml doc. The problem with that is my data resides in 3 frames, across 7 forms. How do I handle this?
    I'll post this question with a new topic.
    null

  • OC4J and FOP installation

    Hi,
    We would like to use the PDF printing of 3.0.1
    I am trying to install FOP but I do not have any knowledge in OC4J and Java ... so I am kind a lost right now.
    I am following the installation guide of OC4J standalone (http://download.oracle.com/docs/cd/B32110_01/web.1013/b28950/install.htm#BABIBGCA)
    I was wondering :
    1- do I need to install oc4j standalone in a separate Oracle Home ?
    2- There is already an OC4J installed in my db Oracle Home , I guess for emdbconsole. So , I created a new directory called oc4j_sa and unzipped the file. When I start OC4J with oc4j -start , it does not give me the prompt back. Then , I can access the web page with port 8888 (192.168.0.21:8888) , but 192.168.0.21:8888/em fails . So I cannot deploy the FOP war file.
    Any pointers or guidance would be great.
    Thanks
    Francis.
    P.S. :
    Oracle 10.1.0.5
    Oracle Linux (RH 4)

    OK, I finally got to the deployment of FOP but now it generates a corrupted PDF.
    Are there any log files that I can check ?
    I created a new Oracle_home for OC4J and ran "EM" to deploy FOP and everything worked like in the viewlet.
    Now I did the setup in APEX and set the following :
    Standard Support
    Print Server Protocol HTTP
    Print Server Host Address 192.168.0.21
    Print Server Port 8888
    Print Server Script /fop/apex_fop.jsp
    I created a sample application to test. In a report , I added the print link.
    When I clic Print, the pdf generated is corrupted and does not work.
    Thanks
    Francis.

  • Xsql and Stored Procedures/Packages

    I need to call a stored proc that includes a select statement through XSQL. The procedure returns a ResultSet. I have not been able to find a way to bind this parameter, or to return this ResultSet. Has anybody tried to do this?
    TIA

    The <xsql:ref-cursor-function> exists for just this purpose.
    If you already have a function that returns a REF CURSOR in an OUT parameter of a procedure, just write a wrapper function that returns that OUT value as the return value of a function and then use <xsql:ref-cursor-function> to repurpose it's results as XML in your XSQL page.

  • XSQL and HttpSession object availability

    Hello,
    How to access the very convenient unique HttpSession unique ID?
    The one we have this way within a servlet:
    HttpSession session = request.getSession(true);
    System.out.println(session.getId());
    Thank You in advance
    JRoch
    null

    You can access this easily by writing a custom action handler. Here is the code for a custom action handler that sets the value of the Http Session id into a page parameter named "session-id".
    import oracle.xml.xsql.*;
    import java.sql.SQLException;
    import org.w3c.dom.Node;
    import javax.servlet.http.*;
    public class GetSessionId extends XSQLActionHandlerImpl {
    public void handleAction( Node rootNode ) throws SQLException {
    XSQLPageRequest req = getPageRequest();
    if (req.getRequestType().equals("Servlet")) {
    HttpSession sess =
    ((XSQLServletPageRequest)req).getHttpServletRequest().getSession(true);
    if (sess != null) {
    req.setPageParam("session-id",sess.getId());
    }Then from within your XSQL page, you can say:
    <xsql:action handler="GetSessionId"/>
    and then later in the page refer to the parameter named session-id to access it's value as a lexical or bind parameter.

  • XSQL and WebLogic 6.0

    I am trying to set up xsql in WebLogic version 6.0. I can set up to run any stand alone servlet but how to tell it to run XSQLSERVLET when extension is .xsql? I've seen in WebLogic 5.1 you do it by setting weblogic.httpd.webApp.xsql=directory with xsql jar file but version 6.0 doesn't have weblogic.properties.

    WLS 6.0 will be supported in the next release of WLCS, which is due in the
    spring.
    - Ginny
    "aamerG" <[email protected]> wrote in message
    news:3a5cb774$[email protected]..
    Hi everyone,
    we are starting a new development project and would like to use Weblogic
    6.0. How soon do you think there we be a version of WLCS which works with
    6.0.
    TIA

Maybe you are looking for

  • How do I change the default location for mail files?

    I want to move my mail folders from /Library/Mail and /Library/Mail Downloads folders to a different drive. How can I do this? I know how to move them - I want to know how I make mail aware of where I have put them). I have an encrypted SSD I want to

  • Re: Error code CL-0x000f

    Having the same issue.  Keeps goind in and out.  Its really getting to be a pain as im unable to watch the shows i want when i want.

  • Submitting xml using BI Publisher Web Services

    Hi, We are developing a web service wrapper around the BI Publisher web services and we are facing problems in consuming the BI Publisher web services. As per the scheduleReport method in the java class, it sends an xml data input to BI Publisher and

  • Problems with fonts

    I recently tried to install some fonts that a friend gave me, and am having trouble- mostly they are .ttf extensions, but a few are .otf The fonts don't appear to install to fontbook, but they show in my user>library>fonts folder. They also display w

  • EM upgrade woes

    Hey all, I am upgrading a standard GC 10.2.0.1 for Linux x86 without any modifications to the latest patch set 10.2.0.4 and have run into problems. All the configuration assistants complete successfully except the last one "Starting Oracle Management