遵循本教程http://netbeans.org/kb/docs/javaee/maven-osgiservice-cdi.html 我设法创建了一个简单的OSGI包和一个客户端Web应用程序。我将托管bean放入Web应用程序客户端。托管已调用放入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包可能不允许使用源代码来处理数据库。 知道如何解决问题吗?
亲切的问候。 彼得
答案 0 :(得分:0)
Java中的接口不允许使用私有字段。
这个问题与OSGi无关,只是Java的基础知识。