public class HttpPartitionBean implements javax.ejb.SessionBean { private javax.ejb.SessionContext mySessionCtx; private PartitionManager partitionManager; private HttpPartitionManager httpPartitionManager; /** * getSessionContext */ public javax.ejb.SessionContext getSessionContext() { return mySessionCtx; } /** * setSessionContext */ public void setSessionContext(javax.ejb.SessionContext ctx) { mySessionCtx = ctx; try { InitialContext ic = new InitialContext(); partitionManager = (PartitionManager)ic.lookup(PartitionManager. JNDI_NAME); httpPartitionManager = HttpPartitionManager.instance; partitionManager.setHttpPartitionManager(httpPartitionManager); String appName = partitionManager.getApplicationName(); httpPartitionManager.setPartitionManager(appName, partitionManager); } catch(Exception e) { throw new EJBException(e); } } /** * ejbCreate */ public void ejbCreate() throws javax.ejb.CreateException { } /** * ejbActivate */ public void ejbActivate() { } /** * ejbPassivate */ public void ejbPassivate() { } /** * ejbRemove */ public void ejbRemove() { } /** * @return */ public PartitionDefinition[] getPartitions() { return new PartitionDefinition[0]; } /** * This is called when a specific partition is assigned to this server process. * @param partitionName * @return */ public boolean partitionLoadEvent(String partitionName) { return false; } /** * This is called when previously assigned partition is withdrawn from this server. * @param partitionName */ public void partitionUnloadEvent(String partitionName) { } /** * This may be called periodically to verify that this server is functioning correctly if * it was assigned a partition. * @param partitionName * @return */ public boolean isPartitionAlive(String partitionName) { return false; } }254 行目の getPartitions() メソッドは、空の区画定義配列を 返すだけです。この EJB では、どの区画も指定していないからです。この EJB で区画を返す場合は、HttpPartitionManager に対して setPartitions() メソッドを 呼び出す必要があります。また、この EJB で setExpressions() メソッドを呼び出すことにより、HTTP 要求表現を 指定することもできます。
Related concepts
EJB API: HttpPartitionBean の拡張