首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用apache与扩展(f.e。( barcode4j)在java applet中

如何使用apache与扩展(f.e。( barcode4j)在java applet中
EN

Stack Overflow用户
提问于 2013-05-31 17:17:50
回答 1查看 1.5K关注 0票数 0

我希望在xsl转换过程中生成一个条形码(Code128)。正如apache文档(和barcode4j文档)中所说的,如果您想使用扩展,请将它放在类路径上。这对于桌面应用程序和从eclipse运行的applet来说很好。但是如何在浏览器上运行呢?

作为概念的证明,我把所有东西都提取到所谓的'fat- jar‘--一个JAR中,将eclipse中的所有东西重新打包为“”,并使用“将所需的库提取到生成的JAR”。除了条形码生成之外,一切都按预期工作(翻译和许多其他事情)。这是我唯一的apache扩展,所以我想问题在于提到的类路径,因为对于applet来说没有这样的东西?

以下是html的主要部分:

代码语言:javascript
复制
<html lang="en-US">
  <body>
    <script src="http://www.java.com/js/deployJava.js"></script>
    <script> var attributes = { codebase:'.', code:'com.signapplet.SignApplet.class', archive:'SignApplet.jar',  width:1024, height:968};
             var parameters = {jnlp_href: 'SignApplet.jnlp'} ; 
             deployJava.runApplet(attributes, parameters, '1.6'); 
    </script>  
  </body>
</html>

和jnlp:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="" href="">
<information>
    <title>Sign Applet</title>
    <vendor>me</vendor>
</information>
<security><all-permissions/></security>
<resources>
    <j2se version="1.6+"
          href="http://java.sun.com/products/autodl/j2se"/>
    <jar href="SignApplet.jar" main="true" />
</resources>
<applet-desc 
     name="Sign Applet"
     main-class="com.signapplet.SignApplet" 
     width="300" 
     height="300" >
 </applet-desc>
 <update check="background"/>
</jnlp>

我要补充的是,在java控制台上,我有一些标准的胡言乱语("19:43:04,429警告FOUserAgent:97 --未知的格式化对象“({http://barcode4j.krysalis.org/ns})”( code128}. (没有上下文信息可用)的子项)“,因为我没有包含正确的完整barcode4j扩展,但我检查了所有内容,并且jar文件中的所有内容都被正确打包,而且所有东西在eclipse中都正常工作。

这是从barcode4j网页复制/粘贴示例代码:

代码语言:javascript
复制
<fo:block>
  <fo:instream-foreign-object>
    <barcode:barcode
          xmlns:barcode="http://barcode4j.krysalis.org/ns"
          message="my message" orientation="90">
      <barcode:code128>
        <barcode:height>8mm</barcode:height>
      </barcode:code128>
    </barcode:barcode>
  </fo:instream-foreign-object>
</fo:block>

我使用的是最新的barcode4j 4j-fop-ext-plete.jar和Apache-fop1.1。我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-31 18:07:49

如果你不小心,创建一个“胖罐子”就有丢失重复文件的风险。FOP扩展是由JAR服务提供者机制 (META/services方法)发现的。这意味着您必须合并而不是覆盖META/services中的文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16862572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档