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.
...@@ -46,8 +50,14 @@ public class UserBean implements UserBeanLocal { ...@@ -46,8 +50,14 @@ public class UserBean implements UserBeanLocal {
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,27 +9,27 @@ import javax.faces.bean.SessionScoped; ...@@ -9,27 +9,27 @@ 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";
...@@ -38,20 +38,70 @@ public class UserView { ...@@ -38,20 +38,70 @@ public class UserView {
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,13 +114,12 @@ public class UserView { ...@@ -64,13 +114,12 @@ 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;
} }
...@@ -78,12 +127,15 @@ public class UserView { ...@@ -78,12 +127,15 @@ public class UserView {
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;
} }
...@@ -97,10 +149,9 @@ public class UserView { ...@@ -97,10 +149,9 @@ public class UserView {
} }
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;
} }
} }
...@@ -125,13 +176,11 @@ public class UserView { ...@@ -125,13 +176,11 @@ public class UserView {
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!