Java 缺少OpenDaylight控制器应用程序的依赖项(SR1)
我按照这里的说明编写一个简单的hello world RPC: 在示例HelloProvider类中,构造函数是:Java 缺少OpenDaylight控制器应用程序的依赖项(SR1),java,sdn,opendaylight,Java,Sdn,Opendaylight,我按照这里的说明编写一个简单的hello world RPC: 在示例HelloProvider类中,构造函数是: public HelloProvider(final DataBroker dataBroker, final RpcProviderService rpcProviderService) { this.dataBroker = dataBroker; this.rpcProviderService = rpcProviderService; } 它需要R
public HelloProvider(final DataBroker dataBroker, final RpcProviderService rpcProviderService) {
this.dataBroker = dataBroker;
this.rpcProviderService = rpcProviderService;
}
它需要RpcProviderService,因此编译失败。因此,我在impl/src/main/resources/OSGI-INF/blueprint/impl-blueprint.xml中添加了:
<reference id="rpcProviderService"
interface="org.opendaylight.mdsal.binding.api.RpcProviderService"/>
odl:type="default" />
org.opendaylight.controller包已经被引入,所以我可能遗漏了一些其他东西。有什么建议吗?我也面临着同样的问题。我对impl-blueprint.xml进行了如下修改:
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
odl:use-default-for-reference-types="true">
<reference id="dataBroker"
interface="org.opendaylight.mdsal.binding.api.DataBroker"
odl:type="default" />
<reference id="rpcProviderService"
interface="org.opendaylight.mdsal.binding.api.RpcProviderService"
odl:type="default" />
<bean id="provider"
class="org.opendaylight.hello.impl.HelloProvider"
init-method="init" destroy-method="close">
<argument ref="dataBroker" />
<argument ref="rpcProviderService" />
</bean>
在这之后,我在通过HTTP方法访问RESTAPI时遇到了另一个问题。我得到了错误401-未经授权。为此,我安装了odl-mdsal-apidocs并开始工作
<dependency>
<groupId>org.opendaylight.netconf</groupId>
<artifactId>odl-mdsal-apidocs</artifactId>
<version>1.10.2</version>
<type>xml</type>
<classifier>features</classifier>
</dependency>
org.opendaylight.netconf
odl mdsal apidocs
1.10.2
xml
特征
<dependency>
<groupId>org.opendaylight.netconf</groupId>
<artifactId>odl-mdsal-apidocs</artifactId>
<version>1.10.2</version>
<type>xml</type>
<classifier>features</classifier>
</dependency>