Thursday, March 31, 2011

Thoughts: Wicket, GIT

On Git: use git for any text file that you might perform edits on that isn't already part of an existing source control repository.

Simply do:

git init
git add [some file or directory]
git commit -m "adding message"



Apache Wicket is a component based web framework for the Java platform. It has seen increased popularity over heavier frameworks like Struts and JSF.

Here is a basic example:

import org.apache.wicket.Application;
import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.CompoundPropertyModel;
import org.apache.wicket.proxy.IProxyTargetLocator;
import org.apache.wicket.proxy.LazyInitProxyFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.berlin.model.LoadableDetachableList;
import org.berlin.model.SelectionOptionBean;
import org.berlin.wicketspring.easy.service.IPersonListService;
import org.berlin.wicketspring.easy.service.PersonListServiceImpl;

/**
* Keywords: wicket-spring, wicket, jetty
*/
public class MainPage extends WebPage {
private static final Logger LOGGER = LoggerFactory.getLogger(MainPage.class);
private final IPersonListService PersonListService;
public HomePage() {
this(null);
}
public HomePage(final PageParameters parameters) {
super(parameters);
PersonListService = (IPersonListService) LazyInitProxyFactory.createProxy(PersonListServiceImpl.class,
new IProxyTargetLocator() {
private static final long serialVersionUID = 1L;
public Object locateProxyTarget() {
return ((WicketApplication) Application.get()).context().getBean("PersonListService");
}
});
final LoadableDetachableList list = new LoadableDetachableList() {
private static final long serialVersionUID = 1L;
@Override
protected List load() {
return PersonListService.fetchStates();
}
};
final ListView listView = new ListView("PersonList", list) {
private static final long serialVersionUID = 1L;
@Override
protected void populateItem(final ListItem item) {
final CompoundPropertyModel model = new CompoundPropertyModel(item.getModelObject());
item.setDefaultModel(model);
item.add(new Label("name"));
item.add(new Label("value"));
}
};
this.add(listView);
}
}
...
...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<div style="margin: 40px; padding: 10px">
<div style="width: 900px; height: auto; background-color: white; border: 1px solid #000; padding: 10px">

<h3>Wicket Spring - Demo</h3>
<div>
<div wicket:id="PersonList">
<span wicket:id="name"></span> |
<span wicket:id="value"></span>
</div>
</div>

</div>
</div>
</body>
</html>

No comments:

Post a Comment