One thing that seems strange to me in JSR289 is the significance given to the package that contains the @SipApplication annotation. There can be only one such annotation in the jars and classes which are contained in the sar/war archive so why is it required that servlets annotated with @SipServlet in other packages must specify an application name? This limitation does not seem to apply to listeners.
It would be useful to be able to write a generic sip servlet in library code that could be included in several sip applications. The need to specify an application name in the @SipServlet annotation makes this difficult.
I propose that we should remove this restriction - any annotated servlet packaged in a sar/war should be treated as being part of that application. This would align us with the rules for @WebServlet. The application name should either be omitted or must match the application name of the archive. The same is true for listeners annotated with @SipListener.
Specifying an application name seems redundant unless the code is outside the sar/war achive e.g. in a jar file included as a library of a ear file. Not sure that we need be concerned about this case since these files would probably not be scanned for Sip annotations.
In terms of JSR359 the affected text would be 23.2.2 and 23.2.4
Note: The information contained in this message may be privileged and confidential and protected from disclosure. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you. CafeX Communications.
Re: @SipServlet and @SipListener