One thing that looks odd (but unrelated to your question) is you are using templates with an ".html"
extension. Click by default supports templates with an ".htm" extension. I suggest you use .htm for
Click templates and .html for static non-click pages.
Wrt to your question it is possible that you are using a SecurityManager that does not allow
accessing protected/private variables. Could you expand on your environment a bit. What
JDK/Server/OS are you running on?
Could you also deploy the Click 2.1.0 examples on the same server and see if it
works?
kind regards
bob
On 8/04/2010 00:06, vxc vxc wrote:
Thank you, but I do have it enabled:
------------------------------------------
package clicktest.page;
import org.apache.click.util.Bindable;
import org.apache.click.Page;
public class TestPage extends Page
{
@Bindable protected String title = "My Title";
-------------------------------------------------------
----click.xml--------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<click-app>
<pages package="clicktest.page" autobinding="annotation"/>
<!--
<mode value="development"/>
<mode value="debug"/>
-->
</click-app>
--------------------------------------------
When I change from:
@Bindable protected String title = "My Title";
To:
@Bindable public String title = "My Title";
...binding works, but it dosn't work with 'protected'.
On Tue, Apr 6, 2010 at 5:46 PM, Bob Schellink <[email protected]
<mailto:[email protected]>> wrote:
Hi,
Annotation binding isn't enabled by default (in upcoming 2.2.0 it
will be though). So what I think is missing in your click.xml is
setting autobinding to "annotation" mode:
<pages package="xxx.yyy.zzz" autobinding="annotation"/>
http://click.apache.org/docs/user-guide/html/ch04s02.html#application-autobinding-annotation
kind regards
bob
On 7/04/2010 8:24 AM, vxc vxc wrote:
I have:
---------------------------test.html ---------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; </head>
<body>
$title
</body>
</html>
---------------------------
---------------------------TestPage.java version 1
---------------------------
import org.apache.click.util.Bindable;
import org.apache.click.Page;
public class TestPage extends Page
{
//@Bindable protected String title = "My Title";
public TestPage()
{
addModel("title", "My Title");
}
}
---------------------------
--------------------------- TestPage.java version 2
---------------------------
import org.apache.click.util.Bindable;
import org.apache.click.Page;
public class TestPage extends Page
{
@Bindable protected String title = "My Title";
/* public TestPage()
{
addModel("title", "My Title");
}
*/
}
---------------------------
The first version of TestPage.java renders test.html correctly
as: My Title
The second version of TestPage.java renders test.html
incorrectly as: $title
Your helps is appreciated.
Thank you!