FopFactory.newInstance();没有合适的方法(Java app)

时间:2016-03-14 10:04:34

标签: java netbeans apache-fop

我是Java的新手,我正在尝试一些像生成PDF这样的东西我跟着accepted answer of this post我做了所有事情,慢慢但安全。

我在使用ApacheFOP的最后一步陷入困境我几乎已经完成但是有一个问题我无法解决。

代码:

>>> glider
[[2, 3], [1, 3]]

我的问题在这里:

    package calculadoraviajes;

/**
 *
 * @author Victor
 */
import javax.xml.transform.*;
import java.io.*;
import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.stream.StreamSource;
import org.apache.fop.apps.FOPException;


import org.apache.fop.apps.FopFactory;
import org.apache.fop.apps.Fop;
import org.apache.fop.apps.MimeConstants;




public class HowToXSLT {



    public static void main(String[] args) throws IOException, TransformerException, FOPException {
      try {

        TransformerFactory tFactory = TransformerFactory.newInstance();

        Transformer transformer =
          tFactory.newTransformer
             (new javax.xml.transform.stream.StreamSource
                ("howto.xsl"));

        transformer.transform
          (new javax.xml.transform.stream.StreamSource
                ("howto.xml"),
           new javax.xml.transform.stream.StreamResult
                ( new FileOutputStream("howto.fo")));
      }
      catch (Exception e) {
        e.printStackTrace( );
        }

      FopFactory fopFactory = FopFactory.newInstance();

      try(OutputStream out = new BufferedOutputStream(new FileOutputStream(new File("exito.pdf")))) {
          Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, out);

          TransformerFactory factory = TransformerFactory.newInstance();
          Transformer transformer = factory.newTransformer();

          Source src = new StreamSource(new File("howto.fo"));

          Result res = new SAXResult(fop.getDefaultHandler());

          transformer.transform(src, res);
      }


    }

}

好像我不能离开newInstance();参数empy但遵循以下代码示例:

ApacheFOP Basic Usage Pattern

一切都应该没问题,但NetBeans说:

  

找不到适合newInstance(无参数)的方法

我确信我的代码或库中存在错误,但说实话,我的Java知识是全新的。

非常感谢您花时间阅读本文,并且可能会给我一些启发。

0 个答案:

没有答案