JNDIのない豆としてHornetQを使用することは可能ですか(たとえそれがいくらかの抽象化の背後にある場合でも)…?
-
14-10-2019 - |
質問
私の元の問題は、HornetQを最低限の依存関係で発見して埋め込む試みです。
避けたいアイテムの1つは、JNDIの必要性です。 JNDIロケーターのことを行うのではなく、すべてのオブジェクトを直接見つける可能性があるはずです。
私はJNDIのファンではありません。なぜなら、それはグローバルながらくたのバケツのようであるように見えるので、名前を追跡する必要がある、彼らが他のことと矛盾しないことを確認するなど、それを覚えているときに間違っているように見える多くのことを確認してください良い抽象化は、最小限の一般の人々を作ります。
ところで、これは単なる一般的な観察ではありません...
解決
例を閲覧しながら、自分のQに対する答えを見つけました。
// Step 1. Create the Configuration, and set the properties accordingly
Configuration configuration = new ConfigurationImpl();
configuration.setPersistenceEnabled(false);
configuration.setSecurityEnabled(false);
configuration.getAcceptorConfigurations().add(new TransportConfiguration(InVMAcceptorFactory.class.getName()));
// Step 2. Create and start the server
HornetQServer server = HornetQServers.newHornetQServer(configuration);
server.start();
// Step 3. As we are not using a JNDI environment we instantiate the objects directly
ClientSessionFactory sf = HornetQClient.createClientSessionFactory(new TransportConfiguration(InVMConnectorFactory.class.getName()));
// Step 4. Create a core queue
ClientSession coreSession = sf.createSession(false, false, false);
所属していません StackOverflow