V produktu WebSphere Application Server v8.0 existuje změna chování přidružená k
SipFactory createRequest()
a
createAddress()
metody, které používají parametry řetězcové adresy.
Zvláštní
javax.servlet.sip.SipFactory
metody přidružené k této změně, které jsou označeny tímto pravidlem, jsou následující:
-
Address createAddress(java.lang.String addr)
-
SipServletRequest createRequest(SipApplicationSession appSession,
java.lang.String method,
java.lang.String from,
java.lang.String to)
throws ServletParseException
Toto pravidlo poskytuje příležitost ke kontrole kódu, který může být ovlivněn změnou chování. Podrobnosti změny chování jsou následující:
- Feature Pack for Communications Enabled Applications (CEA Feature Pack) přidal podporu pro specifikaci SIP Servlet Specification 1.1, JSR 289.
- S ohledem na
createRequest()
a
createAddress()
Metody ve stavu rozhraní API JSR289 :
" ... je-li jedním z argumentů from nebo to identifikátor SIP obsahující parametry, musí být identifikátor URI uzavřen v lomených závorkách. Jinak bude adresa analyzována tak, jako kdyby parametr patřil k adrese, a ne k identifikátoru URI.“
- Původně dodávaný produkt CEA Feature Pack však neodpovídal následujícímu rozhraní API.
V rozporu s dříve uvedeným jsou parametry, které nejsou v lomených závorkách, považovány za parametry URI. Například dle specifikace JSR
-
sip:asaf@ibm.com;param1=1
by se měla rovnat
-
<sip:asaf@ibm.com>;param1=1
ale místo toho to bylo čteno jako
-
<sip:asaf@ibm.com;param1=1>
.
- Ve službě CEA Feature Pack uvolněte přizpůsobenou vlastnost,
sip.jsr289.parse.address
, byl přidán, aby se umožnilo správné chování.
- V produktu WebSphere verze 8.0 se chování změní tak, že výchozí chování je správné chování vyhovující rozhraní API.
V případě, že je přizpůsobená vlastnost nastavena na hodnotu false, bude ve verzi 8.0 získáno původní chování.
Další informace naleznete v dokumentaci: