2011-12-23 100 views
0

以下本教程http://netbeans.org/kb/docs/javaee/maven-osgiservice-cdi.html 我设法创建了一个简单的OSGI包和一个客户端Web应用程序。我将一个托管bean放入了Web应用程序客户端。 managed被调用的是一个放入OSGI bundle的接口。我成功编译了代码。 现在有趣的部分是我可以将数据放入可以查询数据库的OSGI包中。这是我放置到OSGi包的代码:来自OSGI包的呼叫数据源

package com.test; 

import javax.ejb.Remote; 

/** include default packages for Beans */ 
import java.io.Serializable; 
import javax.enterprise.context.SessionScoped; 
    // or import javax.faces.bean.SessionScoped; 
import javax.inject.Named; 
/** include package for SHA-256 encryption */ 
import java.security.MessageDigest; 
import java.security.NoSuchAlgorithmException; 
/** include SQL Packages */ 
import java.sql.Connection; 
import java.sql.PreparedStatement; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import javax.sql.DataSource; 
import javax.annotation.Resource; 
    // or import javax.faces.bean.ManagedBean; 



@Remote 
public interface SL_43Remote { 

    @Resource(name="java:/Oracle") 
    private DataSource ds; 



} 

Betbeans 7.1显示错误消息:“改性剂私人是不允许的”和“=预期的”。 也许我错过了一些库或OSGI捆绑包不允许使用数据库的源代码。 任何想法如何解决这个问题?

亲切的问候。 Peter

回答

0

Java中的接口不允许使用私有字段。

这个问题与OSGi无关,只是Java的基础。