Remote EJB Access এবং উদাহরণ

EJB এবং Remote Access - ইজেবি (EJB) - Java Technologies

308

Remote EJB Access হল একটি অত্যন্ত গুরুত্বপূর্ণ কনসেপ্ট যা Enterprise JavaBeans (EJB) ব্যবহারের মাধ্যমে ডিস্ট্রিবিউটেড সিস্টেম তৈরি করতে সহায়তা করে। যখন একটি EJB রিমোট অ্যাক্সেসের মাধ্যমে অন্য সিস্টেম বা ক্লায়েন্টের সাথে যোগাযোগ করে, তখন তাকে Remote EJB বলা হয়। Eclipse এ Remote EJB Access করতে হলে, ক্লায়েন্ট অ্যাপ্লিকেশনকে রিমোট EJB Bean এর সাথে যোগাযোগ করতে সক্ষম করতে হবে।

EJB এর মাধ্যমে Remote কম্পোনেন্ট অ্যাক্সেস করার জন্য EJB 3.0 স্পেসিফিকেশনকে ব্যবহার করা হয়। এতে, আপনি ক্লায়েন্ট সাইডে EJB Remote Interface তৈরি করে এবং সেখান থেকে EJB Bean এর রিমোট এক্সেস করেন।

এখানে, আমরা Eclipse IDE তে একটি Remote EJB Access কনফিগারেশন এবং উদাহরণ দেখব।


ধাপ ১: Eclipse তে Remote EJB Client সেটআপ করা

1.1: EJB Module তৈরি করা

প্রথমে, একটি EJB Module তৈরি করতে হবে যা রিমোট ক্লায়েন্ট দ্বারা অ্যাক্সেস করা হবে।

  1. FileNewDynamic Web Project নির্বাচন করুন।
  2. Project Name দিন, যেমন EJBRemoteServer
  3. Target Runtime নির্বাচন করুন (যেমন, GlassFish, WildFly, JBoss, Tomcat ইত্যাদি)।
  4. Dynamic Web Module Version নির্বাচন করুন এবং Finish ক্লিক করুন।
  5. এরপর, EJB ফিচার অ্যাড করুন:
    • Project Facets থেকে EJB ফিচার সিলেক্ট করুন।

1.2: EJB Bean তৈরি করা

এখন, একটি Stateless Remote EJB Bean তৈরি করা হবে। এখানে Calculator নামক একটি রিমোট EJB Bean তৈরি করা হচ্ছে।

import javax.ejb.Remote;
import javax.ejb.Stateless;

@Remote
public interface CalculatorRemote {
    int add(int a, int b);
    int subtract(int a, int b);
}

@Stateless
public class CalculatorBean implements CalculatorRemote {

    @Override
    public int add(int a, int b) {
        return a + b;
    }

    @Override
    public int subtract(int a, int b) {
        return a - b;
    }
}

এখানে, CalculatorBean একটি Stateless EJB Bean এবং CalculatorRemote একটি Remote Interface@Remote অ্যানোটেশনটি এই Bean কে রিমোট অ্যাক্সেসের জন্য উপলব্ধ করে।

1.3: Remote EJB Bean রিমোট অ্যাক্সেস

এখন, আপনার রিমোট EJB Beanকে অ্যাক্সেস করার জন্য একটি ক্লায়েন্ট তৈরি করতে হবে।


ধাপ ২: Remote EJB Client তৈরি করা

Remote EJB Client তৈরি করার জন্য, আপনাকে একটি নতুন Java Application তৈরি করতে হবে যা রিমোট EJB Bean এর সাথে যোগাযোগ করবে।

2.1: Java Client তৈরি করা

  1. FileNewJava Project নির্বাচন করুন এবং একটি নতুন প্রোজেক্ট তৈরি করুন (যেমন, EJBRemoteClient).
  2. Remote EJB Client জন্য JNDI (Java Naming and Directory Interface) ব্যবহার করা হবে, যা রিমোট EJB Bean এর সাথে যোগাযোগ করতে সহায়তা করবে।

2.2: JNDI Context এর মাধ্যমে Remote Bean Lookup করা

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.ejb.EJB;

public class EJBClient {

    public static void main(String[] args) {
        try {
            // JNDI context সেট করা
            Context context = new InitialContext();

            // Remote EJB Bean এর নাম দিয়ে Lookup করা
            CalculatorRemote calculator = (CalculatorRemote) context.lookup("java:global/EJBRemoteServer/CalculatorBean!com.example.CalculatorRemote");

            // Remote Bean এর মেথড কল করা
            int resultAdd = calculator.add(5, 3);
            int resultSubtract = calculator.subtract(5, 3);

            System.out.println("Addition Result: " + resultAdd);
            System.out.println("Subtraction Result: " + resultSubtract);

        } catch (NamingException e) {
            e.printStackTrace();
        }
    }
}

এখানে:

  • JNDI Context এর মাধ্যমে আমরা EJBRemoteServer প্রোজেক্টের CalculatorBean কে রিমোটলি লুকআপ করেছি।
  • java:global/ হল JNDI URL প্যাটার্ন, যা EJBRemoteServer প্রোজেক্টের রিমোট EJB Bean নির্ধারণ করে।
  • CalculatorRemote এর add এবং subtract মেথড কল করেছি, যা আমাদের রিমোট EJB Bean থেকে আসে।

2.3: JNDI প্রপার্টি কনফিগারেশন

JNDI এর মাধ্যমে রিমোট EJB অ্যাক্সেস করার জন্য jndi.properties ফাইল তৈরি করা যেতে পারে, যাতে রিমোট সার্ভারের কনফিগারেশন থাকতে পারে।

java.naming.factory.initial=org.jboss.naming.remote.client.InitialContextFactory
java.naming.provider.url=remote://localhost:4447
java.naming.security.principal=admin
java.naming.security.credentials=password

এই কনফিগারেশন ফাইলটি JNDI Context তৈরিতে সহায়তা করবে।


ধাপ ৩: EJB Server তে ডিপ্লয় করা

  1. Server (যেমন WildFly, GlassFish, JBoss) এ EJBRemoteServer প্রোজেক্ট ডিপ্লয় করুন।
  2. EJBRemoteClient প্রোজেক্টটি রান করুন, যা রিমোট EJB Bean থেকে আউটপুট প্রিন্ট করবে।

সারাংশ:

  • Remote EJB Access আপনাকে রিমোট EJB Beans অ্যাক্সেস করার জন্য JNDI (Java Naming and Directory Interface) ব্যবহার করতে সক্ষম করে। আপনি EJB Bean এর রিমোট ইন্টারফেসের মাধ্যমে এই রিমোট অ্যাক্সেস করতে পারেন।
  • Eclipse এ EJB Module তৈরি করার পর, আপনি @Remote অ্যানোটেশন ব্যবহার করে রিমোট EJB Bean তৈরি করতে পারেন।
  • EJB Client এ JNDI কনফিগারেশন করে এবং রিমোট EJB Bean এর লুকআপ করে কাজ করতে পারেন।

এই ধরনের রিমোট অ্যাক্সেস ডিস্ট্রিবিউটেড সিস্টেমে EJB Beans এর মাধ্যমে রিমোট সেবা পরিচালনার জন্য অত্যন্ত গুরুত্বপূর্ণ এবং একটি আধুনিক এন্টারপ্রাইজ অ্যাপ্লিকেশন ডিজাইন করতে সহায়তা করে।

Content added By
Promotion

Are you sure to start over?

Loading...