首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在java servicemix注册表中注册twelvemonkey.imageIO

如何在java servicemix注册表中注册twelvemonkey.imageIO
EN

Stack Overflow用户
提问于 2014-11-13 18:31:40
回答 2查看 1.3K关注 0票数 4

错误:

代码语言:javascript
复制
javax.imageio.IIOException - Unsupported Image Type]
javax.imageio.IIOException: Unsupported Image Type
    at com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:977)[:1.6.0_26]
    at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:948)[:1.6.0_26]
    at javax.imageio.ImageIO.read(ImageIO.java:1422)[:1.6.0_26]
    at javax.imageio.ImageIO.read(ImageIO.java:1374)[:1.6.0_26]
    at com.brodos.test.ScaleImage.execute(ScaleImage.java:23)[914:testproject:1.0.0.SNAPSHOT]
    at com.brodos.test.TestProcessor.process(TestProcessor.java:57)[914:testproject:1.0.0.SNAPSHOT]
    at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)[89:org.apache.camel.camel-core:2.8.0.fuse-02-05]
    at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)[89:org.apache.camel.camel-core:2.8.0.fuse-02-05]
    at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)[89:org.apache.camel.camel-core:2.8.0.fuse-02-05]
    at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)[89:org.apache.camel.camel-core:2.8.0.fuse-02-05]
    at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)[89:org.apache.camel.camel-core:2.8.0.fuse-02-05].

根据下面的注释,我已经将jars添加到maven项目中,并将依赖项添加到pom.xml文件中

EN

回答 2

Stack Overflow用户

发布于 2014-11-17 17:44:37

我认为你需要在servicemix中手动注册与ImageIO一起使用的插件。但您必须确保servicemix包的类路径中有插件可用。

代码语言:javascript
复制
ImageIO.scanForPlugins();
票数 2
EN

Stack Overflow用户

发布于 2014-11-18 18:03:16

代码语言:javascript
复制
soultions found was  :
First Approach :
1)  use the TwelveMonkeys library https://github.com/haraldk/TwelveMonkeys/

2) before making Image to be read or write as imageIo.read or imageIo.write scan for plugin using  ImageIO.scanForPlugins()  and add the twelvemonkeys lib. as maven depedency.

maven install :

osgi:install -s wrap:mvn:com.twelvemonkeys.imageio/imageio-jpeg/3.0

osgi:install -s wrap:mvn:com.twelvemonkeys.imageio/imageio-core/3.0

osgi:install -s wrap:mvn:com.twelvemonkeys.imageio/imageio-metadata/3.0

osgi:install -s wrap:mvn:com.twelvemonkeys.imageio/imageio-batik/3.0

osgi:install -s wrap:mvn:com.twelvemonkeys.imageio/imageio-jmagick/3.0

osgi:install -s wrap:mvn:batik/batik-1.5-fop/0.20-5



<Import-Package>
    batik;resolution:=optional,
    magick;resolution:=optional,
    bsh;resolution:=optional,
    com.twelvemonkeys.*,
    *
</Import-Package>
<Export-Package>
    com.twelvemonkeys.*,
    com.google.gson.*,
    com.brodos.common.*,
</Export-Package>
<DynamicImport-Package>*</DynamicImport-Package>
<Embed-Dependency>imageio-jpeg,imageio-core,imageio-metadata,imageio.batik,imageio.jmagick;scope=compile|runtime</Embed-Dependency>
<Embed-Transitive>true</Embed-Transitive>


Second Approach : Endorsed Mechanism
1) Add the TwelveMonkeys into servicemix /lib/endorsed directory  and the execute the application.
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26906728

复制
相关文章

相似问题

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