Oauth 2.0 Mule Box连接器-无效密钥类型/消息有效负载为字符串类型

Oauth 2.0 Mule Box连接器-无效密钥类型/消息有效负载为字符串类型,oauth-2.0,mule,box-api,mule-studio,Oauth 2.0,Mule,Box Api,Mule Studio,我正在尝试编写一个使用Box连接器的Mule流。我可以进入http://localhost:8081/auth并成功授权。但是,只要我在我的box帐户中创建一个文件,我就会得到“调用getEvents失败。消息负载的类型为:String”。在根异常跟踪中,我会得到:“无效的密钥类型” Mule流量(基于:) 以下是全部错误: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + Started app '

我正在尝试编写一个使用Box连接器的Mule流。我可以进入
http://localhost:8081/auth
并成功授权。但是,只要我在我的box帐户中创建一个文件,我就会得到“调用getEvents失败。消息负载的类型为:String”。在根异常跟踪中,我会得到:“无效的密钥类型”

Mule流量(基于:)


以下是全部错误:

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    + Started app 'boxtest'                                    +
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    WARN  2014-02-06 10:00:35,607 [Box Long Polling thread for endpont http://2.realtime.services.box.net/subscribe?channel=removed&stream_type=all] org.mule.DefaultMuleMessage: setProperty(key, value) called with null value; removing key: boxAccessTokenId; please report the following stack trace to dev@mule.codehaus.org
    java.lang.Throwable
        at org.mule.DefaultMuleMessage.setProperty(DefaultMuleMessage.java:457)
        at org.mule.DefaultMuleMessage.addProperties(DefaultMuleMessage.java:1249)
        at org.mule.DefaultMuleMessage.<init>(DefaultMuleMessage.java:174)
        at org.mule.modules.box.processors.AbstractListeningMessageProcessor.process(AbstractListeningMessageProcessor.java:76)
        at org.mule.modules.box.lp.LongPollingClient$1.run(LongPollingClient.java:63)
        at java.lang.Thread.run(Unknown Source)
    ERROR 2014-02-06 10:00:35,823 [[boxtest].longPolling.stage1.02] org.mule.exception.DefaultMessagingExceptionStrategy: 
    ********************************************************************************
    Message               : Failed to invoke getEvents. Message payload is of type: String
    Code                  : MULE_ERROR--2
    --------------------------------------------------------------------------------
    Exception stack is:
    1. Invalid key type (java.lang.RuntimeException)
      org.mule.modules.box.oauth.BoxConnectorOAuthClientFactory:28 (null)
    2. Failed to invoke getEvents. Message payload is of type: String (org.mule.api.MessagingException)
      org.mule.modules.box.processors.GetEventsMessageProcessor:155 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html)
    --------------------------------------------------------------------------------
    Root Exception stack trace:
    java.lang.RuntimeException: Invalid key type
        at org.mule.modules.box.oauth.BoxConnectorOAuthClientFactory.makeObject(BoxConnectorOAuthClientFactory.java:28)
        at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:1179)
        at org.mule.modules.box.oauth.BoxConnectorOAuthManager.acquireAccessToken(BoxConnectorOAuthManager.java:339)
        + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
    ********************************************************************************
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+已启动应用程序“boxtest”+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
警告2014-02-06 10:00:35607[端桥的箱长轮询线程http://2.realtime.services.box.net/subscribe?channel=removed&stream_type=all]org.mule.DefaultMuleMessage:使用空值调用setProperty(key,value);移除密钥:boxAccessTokenId;请将以下堆栈跟踪报告给dev@mule.codehaus.org
java.lang.Throwable
位于org.mule.DefaultMuleMessage.setProperty(DefaultMuleMessage.java:457)
在org.mule.DefaultMuleMessage.addProperties(DefaultMuleMessage.java:1249)上
在org.mule.DefaultMuleMessage上。(DefaultMuleMessage.java:174)
位于org.mule.modules.box.processors.AbstractListingMessageProcessor.process(AbstractListingMessageProcessor.java:76)
位于org.mule.modules.box.lp.LongPollingClient$1.run(LongPollingClient.java:63)
位于java.lang.Thread.run(未知源)
错误2014-02-06 10:00:35823[[boxtest].longPolling.stage1.02]org.mule.exception.DefaultMessaginExceptionStrategy:
********************************************************************************
消息:调用getEvents失败。消息负载的类型为:String
代码:MULE_错误--2
--------------------------------------------------------------------------------
异常堆栈是:
1.无效的密钥类型(java.lang.RuntimeException)
org.mule.modules.box.oauth.boxConnectorAuthClientFactory:28(空)
2.未能调用getEvents。消息负载的类型为:String(org.mule.api.MessaginException)
org.mule.modules.box.processors.GetEventsMessageProcessor:155(http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html)
--------------------------------------------------------------------------------
根异常堆栈跟踪:
java.lang.RuntimeException:无效的密钥类型
位于org.mule.modules.box.oauth.boxConnectorAuthClientFactory.makeObject(boxConnectorAuthClientFactory.java:28)
位于org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:1179)
位于org.mule.modules.box.oauth.boxConnectorAuthManager.acquireAccessToken(boxConnectorAuthManager.java:339)
+3个以上(为所有内容设置调试级别日志或“-Dmule.verbose.exceptions=true”)
********************************************************************************

这在我看来像是一个bug:box:get events应该使用属性boxAccessTokenId作为身份验证令牌,有一个警告说由于空值而没有设置属性,当我查看值来自的BoxConnector类的源代码时,存在对从未设置的私有变量accessTokenIdentifier的引用。我向Mule开发地址报告了这一点。

…我最近在Mule 3.x和4.x运行时中使用了Box连接器。一旦我了解了需要什么,我就对设置的简单性感到满意


我建议现在就试试。

谢谢,我还以为是我。
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    + Started app 'boxtest'                                    +
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    WARN  2014-02-06 10:00:35,607 [Box Long Polling thread for endpont http://2.realtime.services.box.net/subscribe?channel=removed&stream_type=all] org.mule.DefaultMuleMessage: setProperty(key, value) called with null value; removing key: boxAccessTokenId; please report the following stack trace to dev@mule.codehaus.org
    java.lang.Throwable
        at org.mule.DefaultMuleMessage.setProperty(DefaultMuleMessage.java:457)
        at org.mule.DefaultMuleMessage.addProperties(DefaultMuleMessage.java:1249)
        at org.mule.DefaultMuleMessage.<init>(DefaultMuleMessage.java:174)
        at org.mule.modules.box.processors.AbstractListeningMessageProcessor.process(AbstractListeningMessageProcessor.java:76)
        at org.mule.modules.box.lp.LongPollingClient$1.run(LongPollingClient.java:63)
        at java.lang.Thread.run(Unknown Source)
    ERROR 2014-02-06 10:00:35,823 [[boxtest].longPolling.stage1.02] org.mule.exception.DefaultMessagingExceptionStrategy: 
    ********************************************************************************
    Message               : Failed to invoke getEvents. Message payload is of type: String
    Code                  : MULE_ERROR--2
    --------------------------------------------------------------------------------
    Exception stack is:
    1. Invalid key type (java.lang.RuntimeException)
      org.mule.modules.box.oauth.BoxConnectorOAuthClientFactory:28 (null)
    2. Failed to invoke getEvents. Message payload is of type: String (org.mule.api.MessagingException)
      org.mule.modules.box.processors.GetEventsMessageProcessor:155 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html)
    --------------------------------------------------------------------------------
    Root Exception stack trace:
    java.lang.RuntimeException: Invalid key type
        at org.mule.modules.box.oauth.BoxConnectorOAuthClientFactory.makeObject(BoxConnectorOAuthClientFactory.java:28)
        at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:1179)
        at org.mule.modules.box.oauth.BoxConnectorOAuthManager.acquireAccessToken(BoxConnectorOAuthManager.java:339)
        + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
    ********************************************************************************