V produktu WebSphere Application Server v8.0 se jedná o změnu chování přidruženou k metodám SipFactory createRequest() a createAddress(), které používají parametry adresy řetězce.
Specifické metody javax.servlet.sip.SipFactory přidružené k této změně a označené 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 metody createRequest() a createAddress() specifikace JSR289 API stanovuje:
"... pokud některý z argumentů from nebo to je identifikátor SIP URI 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 mělo být shodné s
- <sip:asaf@ibm.com>;param1=1, bylo to ale čteno jako
- <sip:asaf@ibm.com;param1=1>.
- Ve vydání služby CEA Feature Pack byla přidána přizpůsobená vlastnost sip.jsr289.parse.address, aby bylo možné zajistit 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: