سؤال

Recently we upgraded our servers from 8.5.1 to 8.5.3 and we encountered a problem. Lets say you have a multi value field in XPages like this:

<xp:inputText id="inputText1" multipleTrim="true">
    <xp:this.multipleSeparator><![CDATA[#{javascript:"\n";}]]></xp:this.multipleSeparator>
</xp:inputText>

In 8.5.1 when we wrote getComponent("inputText1").getValue() it used to return a string with all the values separated by comma. So we used to do this - @Explode(getComponent("inputText1").getValue(), ",").

But now in 8.5.3 getComponent("inputText1").getValue() returns an actual array with multiple values in it due to which our existing code is failing.

The current behavior seems correct to me but is it going to change again in future releases? Is their a way to modify this behavior without modifying any code (because we will have to make a lot of modifications)?

هل كانت مفيدة؟

المحلول

I don't know exactly the version / fixpack, but since 8.5.2 this bug is fixed. I had have a lot of fun because of this...

Edit: I think it was this SPR:
http://www-10.lotus.com/ldd/fixlist.nsf/Public/A3CE2F9EF1B74D728525778A002810E6?OpenDocument

Edit 2:
Here are some other potential problems:
1. What are the pitfalls in when moving a 8.5.2 XPages application to 8.5.3
2. XSP.partialRefreshGet() requires a object, otherwise it won't work anymore:

XSP.partialRefreshGet( '#{id:elementId}' ); // does NOT work in 8.5.3
XSP.partialRefreshGet( '#{id:elementId}' , {} ); // works in 8.5.3

نصائح أخرى

One way to avoid future problems is to write your own custom converter.

E.g.

getAsObject: return value.split( '\n' );

getAsString: return value.join( '\n' );

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top