Welcome to the new Gigaspaces XAP forum. To recover your account, please follow these instructions.

Ask Your Question
0

Notify container is never started if it is defined at app context level in a web processing unit

I have a web processing unit that has a pu.xml and also an appContext.xml that is loaded when the webapp is started. If a declare a notify container in the appContext.xml (it would be loaded by the child context in spring), it is not going to be started and it appears to be never started by XAP. Therefore, I had to move it to the pu.xml where the parent spring context is loaded and where the container seems to work fine. I thought that either pooling or notify container can be defined at the application context level.

asked 2014-01-03 08:04:52 -0600

gfernandes gravatar image
edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
0

GigaSpaces related beans should be part of the pu.xml. see more: http://wiki.gigaspaces.com/wiki/displ...

Shay

answered 2014-01-03 08:50:48 -0600

shay hassidim gravatar image

updated 2014-01-03 08:51:17 -0600

edit flag offensive delete link more

Comments

Yes, that's how I make it work. The strange is that the polling container did work if it was at application context but not the notify container.

gfernandes gravatar imagegfernandes ( 2014-01-03 09:03:30 -0600 )edit

in this case you might be experiencing a different problem. how your notify container is configured? do you have notify_write turned on? have you set the java.rmi.server.hostname property (or NIC_ADDR if running as a PU) to have the IP of the server?

you might have multiple network interfaces, so the space might be communicating with the wrong network interface where the notify container is running.

shay hassidim gravatar imageshay hassidim ( 2014-01-03 18:51:17 -0600 )edit

Hi,

Here is the notify container configuration:

  <!--
        A Notify Container bean that triggers notifications to the PU when an script definition has been promoted
  -->
  <os-events:notify-container id="publishScriptDefinitionEventContainer" giga-space="gigaSpace" perform-take-on-notify="false" ignore-event-on-null-take="true" fifo="true">
        <os-events:notify update="true"/>

        <os-events:tx-support tx-manager="transactionManager"/>
      <os-core:template>
          <bean class="com.avaya.ept.are.model.ScriptDefinition">
              <property name="workflowStatus" value="PUBLISHED" />
          </bean>
      </os-core:template>
      <os-events:listener>
          <os-events:annotation-adapter>
              <os-events:delegate ref="publishScriptDefinitionProcessor"/>
          </os-events:annotation-adapter>
      </os-events:listener>
  </os-events:notify-container>

It doesn’t have the notify_write enable due to I only would like to get notifications once the object is updated with the state that I’m interesting to. The strange thing is, if I move the notify container configuration to the pu.xml instead of my webapp application context, it will work.

Regards, Guillermo

gfernandes gravatar imagegfernandes ( 2014-01-06 07:20:06 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2014-01-03 08:04:52 -0600

Seen: 212 times

Last updated: Jan 03 '14