From 50fa67e49ff4f23fab5cbc9a0fcf440d49b8fa30 Mon Sep 17 00:00:00 2001 From: Roland Haeder Date: Wed, 9 Sep 2015 22:14:33 +0200 Subject: [PATCH] =?utf8?q?Continued:=20-=20update=20jcore.jar,=20jcoreee.j?= =?utf8?q?ar,=20jshop-core.jar,=20jshop-ee-lib.jar=20-=20applied=20naming?= =?utf8?q?=20convention:=20Bean=20interfaces=20ends=20with=20Controller,?= =?utf8?q?=20Bean=20classes=20with=20Bean=20and=20"Web"=20must=20be=20pre-?= =?utf8?q?last=20word=20-=20a=20lot=20fixes=20applied=20Signed-off-by:Rola?= =?utf8?q?nd=20H=C3=A4der=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- lib/jcore-ee-logger.jar | Bin 7997 -> 8006 bytes lib/jcore.jar | Bin 28138 -> 28001 bytes lib/jcoreee.jar | Bin 16413 -> 16298 bytes lib/jshop-core.jar | Bin 25433 -> 26181 bytes lib/jshop-ee-lib.jar | Bin 7375 -> 7384 bytes nbproject/project.properties | 2 +- ...eBasketWebBean.java => BasketWebBean.java} | 19 +- ...tWebBean.java => BasketWebController.java} | 2 +- .../beans/category/AdminCategoryWebBean.java | 44 +++- .../category/AdminCategoryWebController.java | 32 ++- ...viceWebBean.java => PizzaShopWebBean.java} | 28 +- ...bBean.java => PizzaShopWebController.java} | 2 +- .../beans/customer/CustomerWebBean.java | 246 +++++++++++++++++- .../beans/customer/CustomerWebController.java | 210 +++++++++++++++ .../customer/PizzaServiceCustomerWebBean.java | 63 ----- .../beans/gender/GenderWebBean.java | 61 ++++- .../beans/gender/GenderWebController.java | 43 +++ .../gender/PizzaServiceGenderController.java | 84 ------ .../admin/admin_category_selection_box.tpl | 4 +- web/WEB-INF/templates/admin/admin_menu.tpl | 2 +- .../admin_parent_category_selection_box.tpl | 2 +- .../generic/gender_selection_box.tpl | 7 +- web/WEB-INF/web.xml | 12 - web/admin/category.xhtml | 67 ++--- web/admin/product.xhtml | 85 +++--- web/index.xhtml | 2 +- 26 files changed, 710 insertions(+), 307 deletions(-) rename src/java/org/mxchange/pizzaapplication/beans/basket/{PizzaServiceBasketWebBean.java => BasketWebBean.java} (81%) rename src/java/org/mxchange/pizzaapplication/beans/basket/{PizzaBasketWebBean.java => BasketWebController.java} (95%) rename src/java/org/mxchange/pizzaapplication/beans/controller/{PizzaServiceWebBean.java => PizzaShopWebBean.java} (77%) rename src/java/org/mxchange/pizzaapplication/beans/controller/{PizzaWebBean.java => PizzaShopWebController.java} (96%) create mode 100644 src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebController.java delete mode 100644 src/java/org/mxchange/pizzaapplication/beans/customer/PizzaServiceCustomerWebBean.java create mode 100644 src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebController.java delete mode 100644 src/java/org/mxchange/pizzaapplication/beans/gender/PizzaServiceGenderController.java diff --git a/lib/jcore-ee-logger.jar b/lib/jcore-ee-logger.jar index 2fd44525778ddad6faab520733226aa324db45e8..0b6d194d9b6f30825848d1fcb339b4521158b6fb 100644 GIT binary patch delta 589 zcmdmMcg&6_z?+$ci-Cayh&E2-(G+CgsOj#ku}QLkfq?;pMJ5|ci%*Po5w_4Xh&MCS z&CDxFEy_#G(M>WioVZ$uYFGSw6GI4C2d{fGj7sWY~<)uwcKq5eQ!2t`L zCBX33@hp&+UzDyN;LXS+!VK{k&;=dRGB)p_Qn?k$8Hsu6sc33YO_fG5Rci7BX)T}= zC-cb2Fa`rTa+4>>u}$`s;Q^7vHBFlCFN9K;q%$xuq)&8;=Q7tbh&MCUO)@r` zxJ8)>sOY8wi2SVyBqysenuDl#Mq3aykI@-KJ!bR*Qk(Ue!WcnxJ2M*#i0)@MWCGEL zIKOa!=p91lVE#vu_pCtvu1$WW|}P*e5fJ8c)6_E2IE&&eLyu zCd~rIDhS)b4Ffr6EhkW+*zuvMx2H4g zv+w=$hssAED2Cf*vFd;Zh_NBVIoEs4xi&B6hauYmaGxg!o97R0&JWB?Os>nwNNC@> zt7XU5hOUIhkz9aC0hVQcRITpRBc`~gfn*2k|JlV5go;+wgrbJ35$?nPb z%~wSN{GlM)^X#0x-o7!H;Jk#`*o*KDh?Bv=^-8?l9UMiA_Bebv8eFv`&)edHPKqXE4H;$(h($o}MK; zxjU`6R=^{0LBo%9IB-$NOSr_=FSFkt3%sJ?RUJ!l*@mCsH6F%!cwNI!+5Z*xb%m{d zrsEC#oUyAq-o!P5UkF^6(dntG+U{vg&rp@;vKX4YoD(8qa2yZdgy+4SFq@JlKUu$Yi9y#2_@Dw0 z5!E13O2|gy(@hC5H$WD+Vv>#33RHZJ1S-CcZ`{Ojqk+l4lu&?d)2L!`SXOzwBj>3xPzyj=St0z<%@y^cv_xKWQ0w0tXB{iM<9~D3X6HFI)H& zD<2d%WZ*EKHc)^815U&;cSKfHBw7lv)^o5zvFPb^{Cs12fE=z|5~L#&i8S@W3alhS z8u72o>y-m*9I#*!e36AH;(%gg(_81;b72)>3S|Q5Ra^fHn?R1h>hRB?+R2j>xs#q= zlA{mztzu8{&?i0lAq5X2*0fDR9`dI>S@i$GPhgEgzCNR8qtfcv%FZfR^g4>iEdX)k ziB}UqB`1*%w~%-h>&XY7#qX+8Z4SY|^8mJ4L+5Dd~eYRD4E*6ElY zU||j)?rN6g+Gy)}K4h3r`_xdN(?-^6Sf|rQ)(f~iuhn=f(!chQwMd{?o~nH%s014n zh`ijQqBZ#u0&asI*hbk|7vf!Jpd1x)plXY{9t|?0K3h$xmXB;qm7gTmcwVl*rYPz1K;y@~ ze0Q~oKqNw_IK`ukN`Dlcdk6-okVVt!$57`YFo8H}#&cpW^<@j+DFaIMySaa#wCLW` z)Yh=IwdKC1f%JAJ8{3A;hAqKy_lp%irEbP@vA!HnH2h}U$n!0B<*+F{ulUHnw&?Vk zlb;eeZi0>u+kK;i&5H6LvWaB}U)^G-p9k6B5+ujBI2>O-hmcuTdnXjPXL!r7R)fu* zt#);63iXp66X+g7?@gfYB68enn2z~}BrFi%&J|^k|5po|*2|YoiIAR)o zJi?H7+RaFJNpddIlsG!fAE>$xyZUU@Bw~}NI}+K$4MInv86ED7GWT;l{@l_a%5d&+ zQ=1_=+TYOzyVmXiQ+ZY~oYAFyy;wc1%(d~Y L?qKhcCf4{rkc?l6 delta 2928 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 delta 2972 zcmai$YfN0n8HV4pyX+j!p51WUHO9nT4J_9M8_aFJfH9bhF}^^+H%u_b*lX@~d@a~c z;xut=@HB06Yw8B~5~-HewNlBdqW(ywsHv3vs+6{A>;8x$S*?_|k)k9DedmC2mPYM? zbLKlU-}lYTnP=XeH>O{m(ag>^yTbr<;MT=C)9?QIMSt_h34`-P0EXro`izamfxe3J zqQ}>l&E3he(dmP9_58xmr_9kxRne<$RK<0zMiuXAb*hNBb*Q4>)}V@;wyp8Em|G8T z{o`NlfVy+#4J}!|6=TYUTBrZFU)_C+ovw%9fIyl7C(;dMATyR$mU?6htP{wQJM7nd z-u9#YC;Ly8438Wg9GEI;v5Fdb&S;8+9qC$}2alLogH(ZB6M68-S7I(FI-$YMJ{&CR zz-OGC3;3qvS*O~-hy*@O%Z@=Jk}Pj8e9D)05H|h+vH8D*t>8`AZ}Y{5hY3oo1inS5 zr37@xDkL+71FMm;l&XZK>M|xja0iZ+c`CnQAT~826)hK>zJ`Z=)_;SqhDWWDt^N7} z`7=-6(c z6FYS5RPVbC>_(T4ZdJAmJfmnVB1;lYt?e%lrew&85~+J@)kbb(XeGDi~`ct~K7V-m<`R|1D+ zz+GY=!V#I5+~XTIaTLb{!X}PmL}1j!7{=xMZm)CD!~`bgefJvI6vi27;sj30cu#HC z6F8+<8|TUlPj>f*hYvLk4~7o~&j!v5oHlU=XXTiu!91rSW=l`Y?hK9J{+^Z=`Oq_F z*D4|%3FoxwCrM@}|8hyIiE4!5M?S#`VF(2%gnJi^d+m!2Zt=Q=Wrt2B|&e<-M7<4UN&*75@31rU-XlM9w93Ouu0u z2RjX{!!8}W1-cA$t7Y#&uM2yyS2gc5upb9>^r@PI2KucP=kn zcf{ahSm3CFnL?Ct)h#YZcJ5{%5rr&sOrF^bFmElx+EN?_VTZ9r;;snU_0VV}VTg;>@_6PNI$ zz*8ok#$|zLOne*9n*8ViMw@sJS1ib$$Fodg;wrAmnRuW4OLDz;7IR9>=zSd(CM3SY zZ7y%PlI6D5qVfe?G4Wk|PvH9|Uc^fpd`crr!u=ydC7X}*PwW~TKQTBmK$2g^D<)pW z4^(%r$t$b3yMKrqCVqq;tNcHaeMLpiJp5GSCcmd;M?xtn4((@=J!^Y4?WM?_w6`_; zRe0pt4F7a3{zZtY2vI%$L4sFkAgGnZtPxuXY7@ij5xc-wLs*I;&?3+((6(17$=F6q0r@3*`2Ll0>987F zh50$we1-&a>cMvAQJ7}2?@rn_?7&Ty2J2oY0`rLdI<}F6nKztn^`q5Zky838XY;A_ z__t3JmlQN8k=x9<3MF+-Xg07FEiSa8O*OY0OG>9|Iu)Ed1a|65?A&VXyHz;3k5jVe z#$!5qbo2_PcRuXZu}@f%x1?}Wn>5(-{N4Nk**q#|jWX%U|M>qa9;r;EaP|qMnOg+> z90I#0lC^g3Cs|k6nKfWiRVav*Gm49wL%FuCzqdtOTCPpzPKS}Y*`-OGx zaZD)DW9=lSWMxseb|P}EsKFlF&K2WU*BtU!X*CgVY5pQC4P^?J7l@aih}2`2x>P_! z8u2_et$>Tb5Ij&dhlPz&HHX?67Ay{`+afFubxKgM;60+UPQilTS^DOrwt=6V0@etZ zK&7=8s|9K(W|SJGW@NQ?krsaN;O8h@U;?qicgdAX6k4K29RccS+fW}xN&5QJPIbb0 zxvDDq^d#?9m8*v2>Qvv`3>=*pD(P&~Y)SS92QJxKof`aTsp{purWH{9=8I1SoPfH! zq5`gGGN4?}WTndA1Q&<7ED96`#mIwe{zAE5j@$C&uZt38hyP*ru1{{SO=V_vM+aP9 OZv~tU`JI$dUjG5N8zUzG diff --git a/lib/jshop-core.jar b/lib/jshop-core.jar index fde0104cd477c033317fa104fade752d6ad111cf..f182f19dedeec92ab3a6934f5ac39c64ad03ae86 100644 GIT binary patch literal 26181 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

CW)Es6kw!gXhK%JYoXs;X&tpdA-4);ydKXX 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 BTRZ>& delta 6559 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 aeUh-aSb#Sx8^}6QAe3fjV3;Qg;sF52i@|IF diff --git a/nbproject/project.properties b/nbproject/project.properties index 71fed62f..b904f934 100644 --- a/nbproject/project.properties +++ b/nbproject/project.properties @@ -50,7 +50,7 @@ j2ee.compile.on.save=true j2ee.copy.static.files.on.save=true j2ee.deploy.on.save=true j2ee.platform=1.7 -j2ee.platform.classpath=${j2ee.server.middleware}/mq/lib/jaxm-api.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar +j2ee.platform.classpath=${j2ee.server.middleware}/mq/lib/jaxm-api.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.persistence.jar j2ee.platform.embeddableejb.classpath=${j2ee.server.home}/lib/embedded/glassfish-embedded-static-shell.jar j2ee.platform.wscompile.classpath=${j2ee.server.home}/modules/webservices-osgi.jar j2ee.platform.wsgen.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar diff --git a/src/java/org/mxchange/pizzaapplication/beans/basket/PizzaServiceBasketWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebBean.java similarity index 81% rename from src/java/org/mxchange/pizzaapplication/beans/basket/PizzaServiceBasketWebBean.java rename to src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebBean.java index eca1f9eb..ce782214 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/basket/PizzaServiceBasketWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebBean.java @@ -34,7 +34,7 @@ import org.mxchange.jshopcore.model.product.Product; */ @Named("basket") @SessionScoped -public class PizzaServiceBasketWebBean extends BaseFrameworkBean implements PizzaBasketWebBean { +public class BasketWebBean extends BaseFrameworkBean implements BasketWebController { /** * Serial number @@ -44,7 +44,7 @@ public class PizzaServiceBasketWebBean extends BaseFrameworkBean implements Pizz /** * Basket bean */ - private final BasketSessionBeanRemote basket; + private final BasketSessionBeanRemote basketBean; /** * Current product instance @@ -56,19 +56,19 @@ public class PizzaServiceBasketWebBean extends BaseFrameworkBean implements Pizz * * @throws javax.naming.NamingException If something happened? */ - public PizzaServiceBasketWebBean () throws NamingException { + public BasketWebBean () throws NamingException { // Get initial context InitialContext context = new InitialContext(); // Try to lookup - this.basket = (BasketSessionBeanRemote) context.lookup("ejb/stateless-basket"); //NOI18N + this.basketBean = (BasketSessionBeanRemote) context.lookup("ejb/stateless-basket"); //NOI18N } @Override public boolean isEmpty () { try { // Call remote bean - return this.basket.isEmpty(); + return this.getBasketBean().isEmpty(); } catch (final RemoteException ex) { // Continued to throw throw new FacesException(ex); @@ -91,4 +91,13 @@ public class PizzaServiceBasketWebBean extends BaseFrameworkBean implements Pizz public void setCurrentProduct (final Product product) { this.currentProduct = product; } + + /** + * Getter for basket bean instance + * + * @return Basket bean instance + */ + private BasketSessionBeanRemote getBasketBean () { + return basketBean; + } } diff --git a/src/java/org/mxchange/pizzaapplication/beans/basket/PizzaBasketWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebController.java similarity index 95% rename from src/java/org/mxchange/pizzaapplication/beans/basket/PizzaBasketWebBean.java rename to src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebController.java index 12b55bc1..3f78e540 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/basket/PizzaBasketWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/basket/BasketWebController.java @@ -24,7 +24,7 @@ import org.mxchange.jshopcore.model.product.Product; * * @author Roland Haeder */ -public interface PizzaBasketWebBean extends Serializable { +public interface BasketWebController extends Serializable { /** * Checks whether the basket is empty * diff --git a/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebBean.java index 9d76d3d9..dccb3b3a 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebBean.java @@ -26,6 +26,7 @@ import org.mxchange.jcoreee.beans.BaseFrameworkBean; import org.mxchange.jshopcore.exceptions.CategoryTitleAlreadyUsedException; import org.mxchange.jshopcore.model.category.Category; import org.mxchange.jshopcore.model.category.CategorySessionBeanRemote; +import org.mxchange.jshopcore.model.category.ProductCategory; /** * Main application class @@ -43,7 +44,17 @@ public class AdminCategoryWebBean extends BaseFrameworkBean implements AdminCate /** * Remote bean for categories */ - private final CategorySessionBeanRemote category; + private final CategorySessionBeanRemote categoryBean; + + /** + * Category title + */ + private String title; + + /** + * Parent id + */ + private Long parentId; /** * Default constructor @@ -55,17 +66,42 @@ public class AdminCategoryWebBean extends BaseFrameworkBean implements AdminCate InitialContext context = new InitialContext(); // Try to lookup the bean - this.category = (CategorySessionBeanRemote) context.lookup("ejb/stateless-category"); //NOI18N + this.categoryBean = (CategorySessionBeanRemote) context.lookup("ejb/stateless-category"); //NOI18N } @Override - public void addCategory (final Category category) throws FaceletException { + public void addCategory () throws FaceletException { try { + // Create category + Category category = new ProductCategory(); + category.setParentId(this.getParentId()); + category.setTitle(this.getTitle()); + // Deligate to bean - this.category.doAdminAddCategory(category); + this.categoryBean.doAdminAddCategory(category); } catch (final CategoryTitleAlreadyUsedException | RemoteException ex) { // Continue to throw throw new FaceletException(ex); } } + + @Override + public String getTitle () { + return this.title; + } + + @Override + public void setTitle (final String title) { + this.title = title; + } + + @Override + public Long getParentId () { + return this.parentId; + } + + @Override + public void setTitle (final Long parentId) { + this.parentId = parentId; + } } diff --git a/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebController.java b/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebController.java index 934c2dc3..2db0eb35 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebController.java +++ b/src/java/org/mxchange/pizzaapplication/beans/category/AdminCategoryWebController.java @@ -17,7 +17,6 @@ package org.mxchange.pizzaapplication.beans.category; import javax.faces.view.facelets.FaceletException; -import org.mxchange.jshopcore.model.category.Category; /** * An interface for product controllers for "ADMIN" role @@ -29,8 +28,35 @@ public interface AdminCategoryWebController { /** * Adds given category data from request to database * - * @param category Category instance * @throws javax.faces.view.facelets.FaceletException If something unexpected happened */ - public void addCategory (final Category category) throws FaceletException; + public void addCategory () throws FaceletException; + + /** + * Getter for title + * + * @return the title + */ + public String getTitle (); + + /** + * Setter for title + * + * @param title the title to set + */ + public void setTitle (final String title); + + /** + * Getter for parent id + * + * @return Parent id + */ + public Long getParentId (); + + /** + * Setter for parent id + * + * @param parentId Parent id to set + */ + public void setTitle (final Long parentId); } diff --git a/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaServiceWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaShopWebBean.java similarity index 77% rename from src/java/org/mxchange/pizzaapplication/beans/controller/PizzaServiceWebBean.java rename to src/java/org/mxchange/pizzaapplication/beans/controller/PizzaShopWebBean.java index c184dbcf..211e86c1 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaServiceWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaShopWebBean.java @@ -40,7 +40,7 @@ import org.mxchange.jshopcore.model.product.ProductSessionBeanRemote; */ @Named("controller") @SessionScoped -public class PizzaServiceWebBean extends BaseFrameworkBean implements PizzaWebBean { +public class PizzaShopWebBean extends BaseFrameworkBean implements PizzaShopWebController { /** * Serial id */ @@ -49,27 +49,27 @@ public class PizzaServiceWebBean extends BaseFrameworkBean implements PizzaWebBe /** * Remote bean for categories */ - private final CategorySessionBeanRemote category; + private final CategorySessionBeanRemote categoryBean; /** * Remote bean for products */ - private final ProductSessionBeanRemote product; + private final ProductSessionBeanRemote productBean; /** * Default constructor * * @throws javax.naming.NamingException Something happened here? */ - public PizzaServiceWebBean () throws NamingException { + public PizzaShopWebBean () throws NamingException { // Get initial context InitialContext context = new InitialContext(); // Try to lookup the bean - this.category = (CategorySessionBeanRemote) context.lookup("ejb/stateless-category"); //NOI18N + this.categoryBean = (CategorySessionBeanRemote) context.lookup("ejb/stateless-category"); //NOI18N // Try to lookup the bean - this.product = (ProductSessionBeanRemote) context.lookup("ejb/stateless-product"); //NOI18N + this.productBean = (ProductSessionBeanRemote) context.lookup("ejb/stateless-product"); //NOI18N } @PostConstruct @@ -81,7 +81,7 @@ public class PizzaServiceWebBean extends BaseFrameworkBean implements PizzaWebBe @Override public Queue getAvailableProducts () throws FacesException { try { - return this.getProduct().getAvailableProducts(); + return this.getProductBean().getAvailableProducts(); } catch (final RemoteException ex) { // Continue to throw throw new FacesException(ex); @@ -91,13 +91,13 @@ public class PizzaServiceWebBean extends BaseFrameworkBean implements PizzaWebBe @Override public Queue getAllCategories () throws FacesException { try { - // Fake zero category + // Fake zero categoryBean Category c = new ProductCategory(0L, "Ist oberste Kategorie", 0L); // Get List back - Deque deque = this.getCategory().getAllCategories(); + Deque deque = this.getCategoryBean().getAllCategories(); - // Add fake category + // Add fake categoryBean deque.addFirst(c); // Return it @@ -113,8 +113,8 @@ public class PizzaServiceWebBean extends BaseFrameworkBean implements PizzaWebBe * * @return Remote shop bean */ - private CategorySessionBeanRemote getCategory () { - return this.category; + private CategorySessionBeanRemote getCategoryBean () { + return this.categoryBean; } /** @@ -122,7 +122,7 @@ public class PizzaServiceWebBean extends BaseFrameworkBean implements PizzaWebBe * * @return Remote shop bean */ - private ProductSessionBeanRemote getProduct () { - return this.product; + private ProductSessionBeanRemote getProductBean () { + return this.productBean; } } diff --git a/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaShopWebController.java similarity index 96% rename from src/java/org/mxchange/pizzaapplication/beans/controller/PizzaWebBean.java rename to src/java/org/mxchange/pizzaapplication/beans/controller/PizzaShopWebController.java index 24117527..4998aa4b 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/controller/PizzaShopWebController.java @@ -27,7 +27,7 @@ import org.mxchange.jshopcore.model.product.Product; * * @author Roland Haeder */ -public interface PizzaWebBean extends Serializable { +public interface PizzaShopWebController extends Serializable { /** * Some "getter" for a linked list of only available products diff --git a/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebBean.java index f2934771..703a87dc 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebBean.java @@ -16,12 +16,252 @@ */ package org.mxchange.pizzaapplication.beans.customer; -import java.io.Serializable; +import javax.annotation.PostConstruct; +import javax.enterprise.context.SessionScoped; +import javax.inject.Named; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import org.mxchange.jcore.model.contact.gender.Gender; +import org.mxchange.jcoreee.beans.BaseFrameworkBean; +import org.mxchange.jshopcore.model.customer.CustomerSessionBeanRemote; /** - * An interface for customer beans + * A customer bean which hides the customer instance * * @author Roland Haeder */ -public interface CustomerWebBean extends Serializable { +@Named("customer") +@SessionScoped +public class CustomerWebBean extends BaseFrameworkBean implements CustomerWebController { + /** + * Serial number + */ + private static final long serialVersionUID = 542_145_347_916L; + + /** + * Remote customer bean + */ + private final CustomerSessionBeanRemote customerBean; + + /** + * Cellphone number + */ + private String cellphoneNumber; + + /** + * City + */ + private String city; + + /** + * Optional comments + */ + private String comment; + + /** + * Company name + */ + private String companyName; + + /** + * Country code + */ + private String countryCode; + + /** + * Email address + */ + private String emailAddress; + + /** + * Gender instance + */ + private Gender gender; + + /** + * Family name + */ + private String familyName; + + /** + * Fax number + */ + private String faxNumber; + + /** + * First name + */ + private String firstName; + + /** + * House number + */ + private Long houseNumber; + + /** + * Phone number + */ + private String phoneNumber; + + /** + * Street + */ + private String street; + + /** + * ZIP code + */ + private Long zipCode; + + /** + * Default constructor + * + * @throws javax.naming.NamingException If something happens? + */ + public CustomerWebBean () throws NamingException { + // Get initial context + InitialContext context = new InitialContext(); + + // Set gender to UNKNOWN + this.gender = Gender.UNKNOWN; + + // Try to lookup + this.customerBean = (CustomerSessionBeanRemote) context.lookup("ejb/stateless-customer"); + } + + @PostConstruct + public void init () throws RuntimeException { + // Call super init first + super.genericInit(); + } + + @Override + public Gender getGender () { + return this.gender; + } + + @Override + public void setGender (final Gender gender) { + this.gender = gender; + } + + @Override + public String getCompanyName () { + return this.companyName; + } + + @Override + public void setCompanyName (final String companyName) { + this.companyName = companyName; + } + + @Override + public String getFirstName () { + return this.firstName; + } + + @Override + public void setFirstName (final String firstName) { + this.firstName = firstName; + } + + @Override + public String getFamilyName () { + return this.familyName; + } + + @Override + public void setFamilyName (final String familyName) { + this.familyName = familyName; + } + + @Override + public String getStreet () { + return this.street; + } + + @Override + public void setStreet (final String street) { + this.street = street; + } + + @Override + public Long getHouseNumber () { + return this.houseNumber; + } + + @Override + public void setHouseNumber (final Long houseNumber) { + this.houseNumber = houseNumber; + } + + @Override + public Long getZipCode () { + return this.zipCode; + } + + @Override + public void setZipCode (final Long zipCode) { + this.zipCode = zipCode; + } + + @Override + public String getCity () { + return this.city; + } + + @Override + public void setCity (final String city) { + this.city = city; + } + + @Override + public String getCountryCode () { + return this.countryCode; + } + + @Override + public void setCountryCode (final String countryCode) { + this.countryCode = countryCode; + } + + @Override + public String getEmailAddress () { + return this.emailAddress; + } + + @Override + public void setEmailAddress (final String emailAddress) { + this.emailAddress = emailAddress; + } + + @Override + public String getPhoneNumber () { + return this.phoneNumber; + } + + @Override + public void setPhoneNumber (final String phoneNumber) { + this.phoneNumber = phoneNumber; + } + + @Override + public String getFaxNumber () { + return this.faxNumber; + } + + @Override + public void setFaxNumber (final String faxNumber) { + this.faxNumber = faxNumber; + } + + @Override + public String getCellphoneNumber () { + return this.cellphoneNumber; + } + + @Override + public void setCellphoneNumber (final String cellphoneNumber) { + this.cellphoneNumber = cellphoneNumber; + } } diff --git a/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebController.java b/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebController.java new file mode 100644 index 00000000..6ee25f7b --- /dev/null +++ b/src/java/org/mxchange/pizzaapplication/beans/customer/CustomerWebController.java @@ -0,0 +1,210 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package org.mxchange.pizzaapplication.beans.customer; + +import java.io.Serializable; +import org.mxchange.jcore.model.contact.gender.Gender; + +/** + * An interface for customer beans + * + * @author Roland Haeder + */ +public interface CustomerWebController extends Serializable { + + /** + * Gender of the contact + * + * @return the gender + */ + public Gender getGender (); + + /** + * Gender of the contact + * + * @param gender the gender to set + */ + public void setGender (final Gender gender); + + /** + * Company name + * + * @return the companyName + */ + public String getCompanyName (); + + /** + * Company name + * + * @param companyName the companyName to set + */ + public void setCompanyName (final String companyName); + + /** + * First name + * + * @return the first name + */ + public String getFirstName (); + + /** + * First name + * + * @param firstName the first name to set + */ + public void setFirstName (final String firstName); + + /** + * Family name + * + * @return the familyName + */ + public String getFamilyName (); + + /** + * Family name + * + * @param familyName the familyName to set + */ + public void setFamilyName (final String familyName); + + /** + * Street + * + * @return the street + */ + public String getStreet (); + + /** + * Street + * + * @param street the street to set + */ + public void setStreet (final String street); + + /** + * House number + * + * @return the houseNumber + */ + public Long getHouseNumber (); + + /** + * House number + * + * @param houseNumber the houseNumber to set + */ + public void setHouseNumber (final Long houseNumber); + + /** + * ZIP code + * + * @return the zipCode + */ + public Long getZipCode (); + + /** + * ZIP code + * + * @param zipCode the zipCode to set + */ + public void setZipCode (final Long zipCode); + + /** + * City + * + * @return the city + */ + public String getCity (); + + /** + * City + * + * @param city the city to set + */ + public void setCity (final String city); + + /** + * Country code + * + * @return the countryCode + */ + public String getCountryCode (); + + /** + * Country code + * + * @param countryCode the countryCode to set + */ + public void setCountryCode (final String countryCode); + + /** + * Email address + * + * @return the emailAddress + */ + public String getEmailAddress (); + + /** + * Email address + * + * @param emailAddress the emailAddress to set + */ + public void setEmailAddress (final String emailAddress); + + /** + * Phone number + * + * @return the phoneNumber + */ + public String getPhoneNumber (); + + /** + * Phone number + * + * @param phoneNumber the phoneNumber to set + */ + public void setPhoneNumber (final String phoneNumber); + + /** + * Fax number + * + * @return the faxNumber + */ + public String getFaxNumber (); + + /** + * Fax number + * + * @param faxNumber the faxNumber to set + */ + public void setFaxNumber (final String faxNumber); + + /** + * Cellphone number + * + * @return the cellphoneNumber + */ + public String getCellphoneNumber (); + + /** + * Cellphone number + * + * @param cellphoneNumber the cellphoneNumber to set + */ + public void setCellphoneNumber (final String cellphoneNumber); +} diff --git a/src/java/org/mxchange/pizzaapplication/beans/customer/PizzaServiceCustomerWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/customer/PizzaServiceCustomerWebBean.java deleted file mode 100644 index 089590f0..00000000 --- a/src/java/org/mxchange/pizzaapplication/beans/customer/PizzaServiceCustomerWebBean.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (C) 2015 Roland Haeder - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package org.mxchange.pizzaapplication.beans.customer; - -import javax.annotation.PostConstruct; -import javax.enterprise.context.SessionScoped; -import javax.inject.Named; -import javax.naming.InitialContext; -import javax.naming.NamingException; -import org.mxchange.jcoreee.beans.BaseFrameworkBean; -import org.mxchange.jshopcore.model.customer.CustomerSessionBeanRemote; - -/** - * A customer bean which hides the customer instance - * - * @author Roland Haeder - */ -@Named("customer") -@SessionScoped -public class PizzaServiceCustomerWebBean extends BaseFrameworkBean implements CustomerWebBean { - /** - * Serial number - */ - private static final long serialVersionUID = 542_145_347_916L; - - /** - * Remote customer bean - */ - private final CustomerSessionBeanRemote customer; - - /** - * Default constructor - * - * @throws javax.naming.NamingException If something happens? - */ - public PizzaServiceCustomerWebBean () throws NamingException { - // Get initial context - InitialContext context = new InitialContext(); - - // Try to lookup - this.customer = (CustomerSessionBeanRemote) context.lookup("ejb/stateless-consumer"); - } - - @PostConstruct - public void init () throws RuntimeException { - // Call super init first - super.genericInit(); - } -} diff --git a/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebBean.java b/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebBean.java index e6c44081..b993c1a4 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebBean.java @@ -16,28 +16,69 @@ */ package org.mxchange.pizzaapplication.beans.gender; -import java.io.Serializable; import java.util.List; +import javax.enterprise.context.ApplicationScoped; +import javax.inject.Named; +import javax.naming.InitialContext; +import javax.naming.NamingException; import org.mxchange.jcore.model.contact.gender.Gender; +import org.mxchange.jcore.model.contact.gender.GenderSessionBeanRemote; +import org.mxchange.jcoreee.beans.BaseFrameworkBean; /** - * An interface for data beans + * A customer bean which hides the customer instance * * @author Roland Haeder */ -public interface GenderWebBean extends Serializable { +@Named ("gender") +@ApplicationScoped +public class GenderWebBean extends BaseFrameworkBean implements GenderWebController { /** - * Getter for all genders as array - * - * @return All genders as array + * Serial number + */ + private static final long serialVersionUID = 835_482_364_189L; + + /** + * Remote bean */ - public Gender[] allGenders (); + private final GenderSessionBeanRemote genderBean; + + /** + * Default constructor + * + * @throws javax.naming.NamingException If something happens? + */ + public GenderWebBean () throws NamingException { + // Get initial context + InitialContext context = new InitialContext(); + + // Try to lookup bean + this.genderBean = (GenderSessionBeanRemote) context.lookup("ejb/stateful-gender"); //NOI18N + } + + @Override + public Gender[] getAllGenders () { + // Return it + return this.getGenderBean().allGenders(); + } + + @Override + public List getSelectableGenders () { + // Init array + // TODO Call EJB here? + List genders = this.getGenderBean().selectableGenders(); + + // Return it + return genders; + } /** - * Getter for only selectable genders as array, UNKNOWN is not selectable + * Getter for data remote bean * - * @return All genders as array + * @return data remote bean */ - public List selectableGenders (); + private GenderSessionBeanRemote getGenderBean () { + return this.genderBean; + } } diff --git a/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebController.java b/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebController.java new file mode 100644 index 00000000..48e2e8af --- /dev/null +++ b/src/java/org/mxchange/pizzaapplication/beans/gender/GenderWebController.java @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package org.mxchange.pizzaapplication.beans.gender; + +import java.io.Serializable; +import java.util.List; +import org.mxchange.jcore.model.contact.gender.Gender; + +/** + * An interface for data beans + * + * @author Roland Haeder + */ +public interface GenderWebController extends Serializable { + + /** + * Getter for all genders as array + * + * @return All genders as array + */ + public Gender[] getAllGenders (); + + /** + * Getter for only selectable genders as array, UNKNOWN is not selectable + * + * @return All genders as array + */ + public List getSelectableGenders (); +} diff --git a/src/java/org/mxchange/pizzaapplication/beans/gender/PizzaServiceGenderController.java b/src/java/org/mxchange/pizzaapplication/beans/gender/PizzaServiceGenderController.java deleted file mode 100644 index 49c2c4d7..00000000 --- a/src/java/org/mxchange/pizzaapplication/beans/gender/PizzaServiceGenderController.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (C) 2015 Roland Haeder - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package org.mxchange.pizzaapplication.beans.gender; - -import java.util.List; -import javax.enterprise.context.ApplicationScoped; -import javax.inject.Named; -import javax.naming.InitialContext; -import javax.naming.NamingException; -import org.mxchange.jcore.model.contact.gender.Gender; -import org.mxchange.jcore.model.contact.gender.GenderSessionBeanRemote; -import org.mxchange.jcoreee.beans.BaseFrameworkBean; - -/** - * A customer bean which hides the customer instance - * - * @author Roland Haeder - */ -@Named ("data") -@ApplicationScoped -public class PizzaServiceGenderController extends BaseFrameworkBean implements GenderWebBean { - - /** - * Serial number - */ - private static final long serialVersionUID = 835_482_364_189L; - - /** - * Remote bean - */ - private final GenderSessionBeanRemote gender; - - /** - * Default constructor - * - * @throws javax.naming.NamingException If something happens? - */ - public PizzaServiceGenderController () throws NamingException { - // Get initial context - InitialContext context = new InitialContext(); - - // Try to lookup bean - this.gender = (GenderSessionBeanRemote) context.lookup("ejb/stateless-data"); //NOI18N - } - - @Override - public Gender[] allGenders () { - // Return it - return this.getGender().allGenders(); - } - - @Override - public List selectableGenders () { - // Init array - // TODO Call EJB here? - List genders = this.getGender().selectableGenders(); - - // Return it - return genders; - } - - /** - * Getter for data remote bean - * - * @return data remote bean - */ - private GenderSessionBeanRemote getGender () { - return this.gender; - } -} diff --git a/web/WEB-INF/templates/admin/admin_category_selection_box.tpl b/web/WEB-INF/templates/admin/admin_category_selection_box.tpl index 8783f813..e986ccec 100644 --- a/web/WEB-INF/templates/admin/admin_category_selection_box.tpl +++ b/web/WEB-INF/templates/admin/admin_category_selection_box.tpl @@ -4,7 +4,7 @@ xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets"> - - + + diff --git a/web/WEB-INF/templates/admin/admin_menu.tpl b/web/WEB-INF/templates/admin/admin_menu.tpl index 9e984152..ab15a72f 100644 --- a/web/WEB-INF/templates/admin/admin_menu.tpl +++ b/web/WEB-INF/templates/admin/admin_menu.tpl @@ -8,7 +8,7 @@

  • -
  • +
    diff --git a/web/WEB-INF/templates/admin/admin_parent_category_selection_box.tpl b/web/WEB-INF/templates/admin/admin_parent_category_selection_box.tpl index e3c4ad26..8b6d8815 100644 --- a/web/WEB-INF/templates/admin/admin_parent_category_selection_box.tpl +++ b/web/WEB-INF/templates/admin/admin_parent_category_selection_box.tpl @@ -4,7 +4,7 @@ xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets"> - + diff --git a/web/WEB-INF/templates/generic/gender_selection_box.tpl b/web/WEB-INF/templates/generic/gender_selection_box.tpl index a6fff29a..940d90e2 100644 --- a/web/WEB-INF/templates/generic/gender_selection_box.tpl +++ b/web/WEB-INF/templates/generic/gender_selection_box.tpl @@ -4,10 +4,7 @@ xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets"> - - - + + diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml index 83bfa265..496a039e 100644 --- a/web/WEB-INF/web.xml +++ b/web/WEB-INF/web.xml @@ -4,18 +4,6 @@ javax.faces.PROJECT_STAGE Development - Faces Servlet javax.faces.webapp.FacesServlet diff --git a/web/admin/category.xhtml b/web/admin/category.xhtml index 2cd077e3..d00596f5 100644 --- a/web/admin/category.xhtml +++ b/web/admin/category.xhtml @@ -19,49 +19,30 @@
    - - - - - - - - - - - - - - - - - - - -
    - Auswählen: - - Bezeichnung: - - Elternkategorie: -
    + + + Auswählen: + #{cat.categoryId}: + + + + + Bezeichnung: + #{cat.title} + + + + Elternkategorie: + #{cat.categoryId}: + #{controller.generateLinkForParent(cat)} + + + +
    diff --git a/web/admin/product.xhtml b/web/admin/product.xhtml index cfb743a5..30039b91 100644 --- a/web/admin/product.xhtml +++ b/web/admin/product.xhtml @@ -19,57 +19,36 @@
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Produktnummer: - - Produktbezeichnung: - - Einzelpreis: - - Kategorie: - - Verfügbar: -
    - #{product.itemId}: - - - #{product.title} - - #{product.price} - - ${controller.getPrintableProduktCategory(product)} - - ${controller.getPrintableProductAvailability(product)} -
    + + + Produktnummer: + #{pro.id}: + + + + + Produktbezeichnung: + #{pro.title} + + + Einzelpreis: + #{pro.price} + + + Kategorie: + ${controller.getPrintableProduktCategory(product)} + + + Verfügbar: + ${controller.getPrintableProductAvailability(product)} + + + +
    @@ -138,8 +117,8 @@ diff --git a/web/index.xhtml b/web/index.xhtml index c7f13834..c8f01264 100644 --- a/web/index.xhtml +++ b/web/index.xhtml @@ -100,7 +100,7 @@ - + -- 2.39.5