This question is similar to:
jsf: integer property binded to a inputtext in UI is set to zero on submit
but I am not completely satisfied with the solution. The contexts is the same: I have a web form requiring an Integer value. If the textbox is left empty, I want my Integer field to be 'null' but instead the EL Parser automatically sets my id field to '0'.
I can fix the problem by setting a JVM Parameter in my local Tomcat VM:
-Dorg.apache.el.parser.COERCE_TO_ZERO=false
However, this will not work for our client's machine. Is it possible to set/change this JVM parameter "in-code".
Update: I've found that this is being requested but if anyone else has any other workaround, I would like to hear that too.
https://issues.apache.org/bugzilla/show_bug.cgi?id=48813
Update 2: I can't change the value back from a '0' to a 'null' because my application should treat '0' as an actual id. So I need to know at runtime whether the id textbox was left empty or not.
To set the color to the TextView widget, call setTextColor() method on the TextView widget reference with specific color passed as argument. setTextColor() method takes int as argument. Use android. graphics.
String string = getString(R. string. yourString);
To set Android Button font/text size, we can set android:textSize attribute for Button in layout XML file. To programmatically set or change Android Button font/text size, we can pass specified size to the method Button. setTextSize(specific_size).
TextView tv1 = new TextView(this); tv1. setPadding(5, 0, 5, 0); tv1. setLayoutParams(new LayoutParams(LayoutParams.
You can set the system properties programmatically using System#setProperty()
.
System.setProperty("org.apache.el.parser.COERCE_TO_ZERO", "false");
However, you need to ensure that this is been set before JSF/EL ever get initialized. Best place would be a ServletContextListener
.
public class Config implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent event) {
System.setProperty("org.apache.el.parser.COERCE_TO_ZERO", "false");
}
@Override
public void contextDestroyed(ServletContextEvent event) {
// NOOP
}
}
Register it as <listener>
in web.xml
, or when you're already on Servlet 3.0 (Tomcat 7 and so), with @WebListener
annotation.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With