0

在这里发帖总是我最后的手段,但我在这里发疯了。我是 Mule ESB 初学者。我一直在尝试做一些简单的例子来让我走上正轨。但是我在mule网站上看到的一个例子遇到了问题...... http://www.mulesoft.org/documentation/display/current/WSDL+Connectors

我正在尝试设置一个通用 WSDL 端点,它调用 Web 服务而不生成客户端。

我试图访问的 WSDL... http://www.webservicex.net/CurrencyConvertor.asmx?WSDL&method=ConversionRate

问题是,我不断收到以下错误

[ERROR] IOException during exec() of compiler "javac". Check your path environment variable.
ERROR 2013-04-19 09:27:07,920 [[soap].soapFlow1.stage1.02] org.apache.cxf.endpoint.dynamic.DynamicClientFactory: Could not compile java files for http://www.webservicex.net/CurrencyConvertor.asmx?WSDL&method=ConversionRate?wsdl.
ERROR 2013-04-19 09:27:07,934 [[soap].soapFlow1.stage1.02] org.mule.exception.DefaultMessagingExceptionStrategy: 
********************************************************************************
Message               : Unable to create JAXBContext for generated packages: Provider com.sun.xml.bind.v2.ContextFactory could not be instantiated: javax.xml.bind.JAXBException: "net.webservicex" doesnt contain ObjectFactory.class or jaxb.index (java.lang.IllegalStateException)
Code                  : MULE_ERROR--2
--------------------------------------------------------------------------------
Exception stack is:
1. "net.webservicex" doesnt contain ObjectFactory.class or jaxb.index (javax.xml.bind.JAXBException)
  com.sun.xml.bind.v2.ContextFactory:183 (http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/xml/bind/JAXBException.html)
2. Provider com.sun.xml.bind.v2.ContextFactory could not be instantiated: javax.xml.bind.JAXBException: "net.webservicex" doesnt contain ObjectFactory.class or jaxb.index (javax.xml.bind.JAXBException)
  javax.xml.bind.ContextFinder:-1 (http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/xml/bind/JAXBException.html)
3. Unable to create JAXBContext for generated packages: Provider com.sun.xml.bind.v2.ContextFactory could not be instantiated: javax.xml.bind.JAXBException: "net.webservicex" doesnt contain ObjectFactory.class or jaxb.index (java.lang.IllegalStateException)
  org.apache.cxf.endpoint.dynamic.DynamicClientFactory:363 (null)
4. Unable to create JAXBContext for generated packages: Provider com.sun.xml.bind.v2.ContextFactory could not be instantiated: javax.xml.bind.JAXBException: "net.webservicex" doesnt contain ObjectFactory.class or jaxb.index (java.lang.IllegalStateException) (org.mule.api.DefaultMuleException)
  org.mule.module.cxf.builder.AbstractOutboundMessageProcessorBuilder:96 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/DefaultMuleException.html)
--------------------------------------------------------------------------------
Root Exception stack trace:
javax.xml.bind.JAXBException: "net.webservicex" doesnt contain ObjectFactory.class or jaxb.index
    at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:183)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
********************************************************************************

是的,我已经在互联网上搜寻了几个小时以寻找解决方案。

我为尝试解决问题所做的事情。

  • 确保在环境变量中设置了 javac 路径。(%JAVA_HOME%\bin)
  • 确保 mule studio 有正确的 JRE 路径


我知道这是一个简单的问题,但我需要弄清楚它以解决我想到的一个更大的项目。
如果有人可以解决这个问题,那么我将非常感激。

谢谢 :)

其他信息:

  • 使用 Java 1.7
  • 使用 MuleStudio 3.4
4

1 回答 1

0

好的,在尝试了许多不同的解决方案并失败后,我想通了。我见过很多人问和我一样的问题,但很少有解决方案。
这是我

的... JRE 不正确。
我的 java 目录由..
在此处输入图像描述
和 Mule studio 使用文件夹 jre7
所以我将它更改为使用目录 jdk1.7.0_17/jre 中的 JRE
再次运行它并且.. OMG 成功了!
这是在 mule studio/eclipse 中的操作方法...

右键单击您的项目 --> 属性 --> Java 构建路径 --> 库选项卡
--> 单击 JRE 系统库 --> 按编辑 --> 单击Alternate JRE --> 点击 Installed JREs..
--> 然后像我上面所说的那样从正确的目录添加 JRE。

希望这可以帮助任何有同样问题的人!:)

于 2013-04-19T11:52:12.850 回答