0 Replies Latest reply on Dec 29, 2011 3:22 PM by Peter Penzov

    Howto call method from OSGI bundle?

    Peter Penzov Newbie

      I have written this OSGI bundle:



       * To change this template, choose Tools | Templates
       * and open the template in the editor.
      package CryptoLib;
      import java.security.MessageDigest;
      import java.security.NoSuchAlgorithmException;
      public class cryptoSha {
          public cryptoSha() {
          /** method for converting simple string into SHA-256 hash */
             public String stringHash(String hash) throws NoSuchAlgorithmException{
                  MessageDigest md = MessageDigest.getInstance("SHA-256");
                  byte byteData[] = md.digest();
                  /** convert the byte to hex format */
                  StringBuilder sb = new StringBuilder();
                      for (int i = 0; i < byteData.length; i++) {
                  sb.append(Integer.toString((byteData[i] & 0xff) + 0x100, 16).substring(1));
                 return sb.toString();


      And this is the Acticator class:



      package com.CL77;
          import org.osgi.framework.BundleActivator;
          import org.osgi.framework.BundleContext;
          public class Activator implements BundleActivator {
              private static BundleContext context;
              public void start(BundleContext context) throws Exception {
                   Activator.context = context;
              public void stop(BundleContext context) throws Exception {
                   Activator.context = null;


      This is the EAR package which calls the bundle:


      import javax.servlet.http.HttpServletResponse;
      import javax.servlet.http.HttpSession;
      import org.osgi.framework.BundleContext;
      public class userCheck extends HttpServlet implements Serializable {
             public userCheck(){
             private BundleContext bundleContext;
          public void init(ServletConfig config) throws ServletException {
              bundleContext = (BundleContext) config.getServletContext().getAttribute("osgi-bundlecontext");
              protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
              try {
                  cryptoSha dc = new cryptoSha();
                  String nhash = dc.stringHash("test");
              } catch (NoSuchAlgorithmException ex) {


      I successfully compile and deploy then on JBoss 7.1.0 but when I start the EAR package nothing happens. Can you help me to find where I'm wrong in the code?


      kind regards, Peter