Commit 21d04c52 by tuomari

Pieniä puljautuksia..

git-svn-id: https://dev.intra.insomnia.fi/svn/trunk@25 8cf89bec-f6a3-4178-919f-364fb3449fe5
1 parent 7c777455
...@@ -7,6 +7,9 @@ import javax.ejb.Stateless; ...@@ -7,6 +7,9 @@ import javax.ejb.Stateless;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext; import javax.persistence.PersistenceContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.UserBeanLocal; import fi.insomnia.bortal.UserBeanLocal;
import fi.insomnia.bortal.db.User; import fi.insomnia.bortal.db.User;
...@@ -17,6 +20,7 @@ import fi.insomnia.bortal.db.User; ...@@ -17,6 +20,7 @@ import fi.insomnia.bortal.db.User;
@Stateless @Stateless
public class UserBean implements UserBeanLocal { public class UserBean implements UserBeanLocal {
private static final Logger logger = LoggerFactory.getLogger(UserBean.class);
/** /**
* Java EE container injektoi tmn luokkamuuttujan luokan luonnin * Java EE container injektoi tmn luokkamuuttujan luokan luonnin
* yhteydess. * yhteydess.
...@@ -43,11 +47,17 @@ public class UserBean implements UserBeanLocal { ...@@ -43,11 +47,17 @@ public class UserBean implements UserBeanLocal {
em.persist(returnUser); em.persist(returnUser);
return returnUser; return returnUser;
} }
public List<User> getUsers() { public List<User> getUsers() {
List<User> ret = em.createQuery("select u from User u", User.class).getResultList(); List<User> ret = em.createQuery("select u from User u", User.class).getResultList();
//logger.info("Size: " + ret.size()); logger.info("Found {} users from database ", ret.size());
return ret; return ret;
} }
@Override
public void mergeChanges(User currentUser) {
em.merge(currentUser);
}
} }
...@@ -11,4 +11,7 @@ public interface UserBeanLocal { ...@@ -11,4 +11,7 @@ public interface UserBeanLocal {
List<User> getUsers(); List<User> getUsers();
void mergeChanges(User currentUser);
} }
...@@ -8,9 +8,7 @@ import javax.persistence.Entity; ...@@ -8,9 +8,7 @@ import javax.persistence.Entity;
import javax.persistence.Lob; import javax.persistence.Lob;
import javax.persistence.ManyToMany; import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.NamedQuery; import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
/** /**
* Entity implementation class for Entity: Group * Entity implementation class for Entity: Group
......
...@@ -12,10 +12,10 @@ ...@@ -12,10 +12,10 @@
<ui:define name="header">Add new user</ui:define> <ui:define name="header">Add new user</ui:define>
<ui:define name="content"> <ui:define name="content">
<h:form>
<h:panelGrid comlumns="2"> <h:panelGrid comlumns="2">
<h:outputLabel value="Nick:" /><h:inputText value="#{userView.nick}" /> <h:outputLabel value="Nick:" /><h:inputText value="#{userView.nick}" />
<h:outputLabel value="Real name" /><h:inputText value="#{userView.Realname}" /> <h:outputLabel value="Real name" /><h:inputText value="#{userView.realname}" />
<h:outputLabel value="Address" /><h:inputText value="#{userView.address}" /> <h:outputLabel value="Address" /><h:inputText value="#{userView.address}" />
<h:outputLabel value="Zip Code" /><h:inputText value="#{userView.zip}" /> <h:outputLabel value="Zip Code" /><h:inputText value="#{userView.zip}" />
<h:outputLabel value="Town" /><h:inputText value="#{userView.town}" /> <h:outputLabel value="Town" /><h:inputText value="#{userView.town}" />
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
</h:selectOneRadio> </h:selectOneRadio>
<h:commandButton action="#{userView.saveUser()}" value="Save" /> <h:commandButton action="#{userView.saveUser()}" value="Save" />
</h:panelGrid> </h:panelGrid>
</h:form>
</ui:define> </ui:define>
<ui:define name="footer">footer</ui:define> <ui:define name="footer">footer</ui:define>
</ui:composition> </ui:composition>
......
<!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"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title></title>
</h:head>
<h:body>
<ui:composition template="/layout/default-template.xhtml">
<ui:define name="title">EditUser</ui:define>
<ui:define name="header">Edit user</ui:define>
<ui:define name="content">
Foo
<h:dataTable border="1" id="user" value="#{userView.users}" var="user">
<h:column>
<f:facet name="header">
<h:outputText value="Id" />
</f:facet>
<h:outputText value="#{user.id}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Real name" />
</f:facet>
<h:outputText value="#{user.name}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Address" />
</f:facet>
<h:outputText value="#{user.address}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Town" />
</f:facet>
<h:outputText value="#{user.town}" />
</h:column>
</h:dataTable>
</ui:define>
<ui:define name="footer">footer</ui:define>
</ui:composition>
</h:body>
</html>
\ No newline at end of file
...@@ -9,49 +9,99 @@ import javax.faces.bean.SessionScoped; ...@@ -9,49 +9,99 @@ import javax.faces.bean.SessionScoped;
import javax.faces.model.ListDataModel; import javax.faces.model.ListDataModel;
import javax.persistence.Column; import javax.persistence.Column;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.UserBeanLocal; import fi.insomnia.bortal.UserBeanLocal;
import fi.insomnia.bortal.db.User; import fi.insomnia.bortal.db.User;
@ManagedBean(name="UserView") @ManagedBean(name = "userView")
@SessionScoped @SessionScoped
public class UserView { public class UserView {
@EJB @EJB
private UserBeanLocal userBean; private UserBeanLocal userBean;
// //
// private String name; // private String name;
// private String password; // private String password;
// private String nick; // private String nick;
// private String email; // private String email;
// private String address; // private String address;
// @Column(length = 11) // @Column(length = 11)
// private String zip; // private String zip;
private User currentUser; private User currentUser;
private String nick = "default"; private String nick = "default";
private String password = "default"; private String password = "default";
private String realname = "default"; private String realname = "default";
private String email = "default"; private String email = "default";
private String address = "default"; private String address = "default";
private String town = "default"; private String town = "default";
private String phone ="default"; private String phone = "default";
private Boolean female = false; private Boolean female = false;
private String zip = "default"; private String zip = "default";
private ListDataModel<User> items; private ListDataModel<User> items;
public String saveUser() public UserBeanLocal getUserBean() {
{ return userBean;
}
public void setUserBean(UserBeanLocal userBean) {
this.userBean = userBean;
}
public Boolean getFemale() {
return female;
}
public void setFemale(Boolean female) {
this.female = female;
}
public ListDataModel<User> getItems() {
return items;
}
public void setItems(ListDataModel<User> items) {
this.items = items;
}
public String getNick() {
return nick;
}
public String getEmail() {
return email;
}
public String getAddress() {
return address;
}
public String getTown() {
return town;
}
public String getPhone() {
return phone;
}
public String getZip() {
return zip;
}
private static final Logger logger = LoggerFactory.getLogger(UserView.class);
public String saveUser() {
logger.info("Saving user");
// Luodaan uusi kyttj UserBeanin funktiolla createNewUser jolle // Luodaan uusi kyttj UserBeanin funktiolla createNewUser jolle
// annetaan parametrina pakolliset tiedot ( nick ja salasana ) // annetaan parametrina pakolliset tiedot ( nick ja salasana )
// Paluuarvona saadaan uusi uljas kyttj-olio. // Paluuarvona saadaan uusi uljas kyttj-olio.
currentUser = userBean.createNewUser(nick, password); currentUser = userBean.createNewUser(nick, password);
if(currentUser == null) if (currentUser == null) {
{ logger.warn("Could not create user. function returned null!");
return "fault"; return "fault";
} }
// asetetaan muut kentt.. // asetetaan muut kentt..
...@@ -64,28 +114,30 @@ public class UserView { ...@@ -64,28 +114,30 @@ public class UserView {
currentUser.setPhone(phone); currentUser.setPhone(phone);
currentUser.setFemale(female); currentUser.setFemale(female);
currentUser.setPassword(password); currentUser.setPassword(password);
userBean.mergeChanges(currentUser);
logger.info("Saved current users town to {}", town);
return "list";
return "edit";
} }
public void setNick(String nick) { public void setNick(String nick) {
this.nick = nick; this.nick = nick;
} }
public String getPassword() { public String getPassword() {
return password; return password;
} }
public void setPassword(String password) { public void setPassword(String password) {
this.password = password; this.password = password;
} }
public String getRealname() { public String getRealname() {
return realname; return realname;
} }
public void setRealname(String realname) { public void setRealname(String realname) {
this.realname = realname; this.realname = realname;
} }
public void setCurrentUser(User currentUser) { public void setCurrentUser(User currentUser) {
...@@ -95,43 +147,40 @@ public class UserView { ...@@ -95,43 +147,40 @@ public class UserView {
public User getCurrentUser() { public User getCurrentUser() {
return currentUser; return currentUser;
} }
public void setFemale(String sex) { public void setFemale(String sex) {
if(sex=="male") { if (sex == "male") {
this.female = false; this.female = false;
} } else if (sex == "female") {
else if(sex=="female") { this.female = true;
this.female = true; }
} }
}
public void setAddress(String address) { public void setAddress(String address) {
this.address = address; this.address = address;
} }
public void setZip(String zip) { public void setZip(String zip) {
this.zip = zip; this.zip = zip;
} }
public void setTown(String town) { public void setTown(String town) {
this.town = town; this.town = town;
} }
public void setPhone(String phone) { public void setPhone(String phone) {
this.phone = phone; this.phone = phone;
} }
public void setEmail(String email) { public void setEmail(String email) {
this.email = email; this.email = email;
} }
public ListDataModel<User> getUsers() public ListDataModel<User> getUsers() {
{ List<User> users = userBean.getUsers();
List<User> users = userBean.getUsers(); items = new ListDataModel<User>(users);
items = new ListDataModel<User>(users); logger.info("Fetching users. Found {}", items.getRowCount());
return items; return items;
} }
} }
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!