wip made remote ejb working over http
This commit is contained in:
parent
d4e537a2bf
commit
2a0d992642
393 changed files with 8916 additions and 3872 deletions
|
|
@ -3,7 +3,7 @@
|
|||
<parent>
|
||||
<artifactId>vasc-demo-tech</artifactId>
|
||||
<groupId>net.forwardfire.vasc.demo</groupId>
|
||||
<version>0.3.5-SNAPSHOT</version>
|
||||
<version>0.4.1-SNAPSHOT</version>
|
||||
<relativePath>..</relativePath>
|
||||
</parent>
|
||||
<artifactId>vasc-demo-tech-web</artifactId>
|
||||
|
|
@ -33,18 +33,32 @@
|
|||
<version>${project.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.forwardfire.vasc.demo</groupId>
|
||||
<artifactId>vasc-demo-tech-ejb3</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<!--
|
||||
<dependency>
|
||||
<groupId>net.forwardfire.vasc</groupId>
|
||||
<artifactId>vasc-xpql-ejb3-server</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.forwardfire.vasc</groupId>
|
||||
<artifactId>vasc-core-ejb3-server</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
-->
|
||||
<dependency>
|
||||
<groupId>javax</groupId>
|
||||
<artifactId>javaee-api</artifactId>
|
||||
<version>${javaee-api.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish</groupId>
|
||||
<artifactId>javax.faces</artifactId>
|
||||
<version>${javax.faces.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.richfaces.ui</groupId>
|
||||
<artifactId>richfaces-components-ui</artifactId>
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ public class ExportController {
|
|||
public ExportController() {
|
||||
try {
|
||||
JndiVascControllerProvider p = new JndiVascControllerProvider();
|
||||
p.setJndiName("java:comp/env/vasc/DemoVascController");
|
||||
p.setJndiName("java:comp/env/vasc/server-tech");
|
||||
vascController = p.getVascController();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
|
|
|
|||
|
|
@ -0,0 +1,125 @@
|
|||
/*
|
||||
* Copyright 2009-2012 forwardfire.net All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
|
||||
* the following disclaimer in the documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
||||
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||||
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
package net.forwardfire.vasc.demo.tech.web.beans;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.sql.Connection;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import javax.ejb.EJB;
|
||||
import javax.naming.Context;
|
||||
import javax.naming.InitialContext;
|
||||
import javax.naming.NamingException;
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.menu.VascMenuController;
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.menu.model.VascMenuGroup;
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.menu.model.VascMenuWebComparator;
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.menu.model.VascMenuWeb;
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.menu.model.VascMenuWebType;
|
||||
|
||||
/**
|
||||
* MenuController Shows the menu for the user.
|
||||
*
|
||||
* @author Willem Cazander
|
||||
* @version 1.0 May 19, 2012
|
||||
*/
|
||||
public class MenuController implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -6820749860984575869L;
|
||||
private List<VascMenuWeb> userVascMenu = null;
|
||||
private UserController userController = null;
|
||||
private VascMenuController vascMenuController = null;
|
||||
|
||||
private void init() {
|
||||
// RM ME
|
||||
if (vascMenuController==null) {
|
||||
try {
|
||||
InitialContext ctx = new InitialContext();
|
||||
vascMenuController = (VascMenuController)ctx.lookup("java:app/demo/vascMenuController");
|
||||
} catch (NamingException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private List<VascMenuWeb> getMenuFiltered(VascMenuWebType type) {
|
||||
init();
|
||||
return vascMenuController.getFilteredMenuWeb(type);
|
||||
}
|
||||
|
||||
public List<VascMenuGroup> getVascMenuGroup() {
|
||||
init();
|
||||
List<VascMenuGroup> result = vascMenuController.getFilteredMenuGroup();
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuBarLeft() {
|
||||
return getMenuFiltered(VascMenuWebType.BAR_LEFT);
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuBarRight() {
|
||||
return getMenuFiltered(VascMenuWebType.BAR_RIGHT);
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuBarBottom() {
|
||||
return getMenuFiltered(VascMenuWebType.BAR_BOTTOM);
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuPageIndex() {
|
||||
return getMenuFiltered(VascMenuWebType.PAGE_INDEX);
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuPageUserLeft() {
|
||||
return getMenuFiltered(VascMenuWebType.PAGE_USER_LEFT);
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuPageUserRight() {
|
||||
return getMenuFiltered(VascMenuWebType.PAGE_USER_RIGHT);
|
||||
}
|
||||
|
||||
public List<VascMenuWeb> getMenuPageAdmin() {
|
||||
return getMenuFiltered(VascMenuWebType.PAGE_ADMIN);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return the userController
|
||||
*/
|
||||
public UserController getUserController() {
|
||||
return userController;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param userController the userController to set
|
||||
*/
|
||||
public void setUserController(UserController userController) {
|
||||
this.userController = userController;
|
||||
}
|
||||
}
|
||||
|
|
@ -24,11 +24,15 @@ package net.forwardfire.vasc.demo.tech.web.beans;
|
|||
|
||||
import java.io.IOException;
|
||||
import java.io.Serializable;
|
||||
import java.util.Properties;
|
||||
|
||||
import javax.faces.context.FacesContext;
|
||||
import javax.faces.event.ActionEvent;
|
||||
import javax.naming.Context;
|
||||
import javax.naming.InitialContext;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.user.LoginUserController;
|
||||
import net.forwardfire.vasc.demo.tech.web.models.WebUser;
|
||||
|
||||
/**
|
||||
|
|
@ -71,6 +75,27 @@ public class UserController implements Serializable {
|
|||
user.setFullName(FacesContext.getCurrentInstance().getExternalContext().getRemoteUser());
|
||||
user.setLoginName(FacesContext.getCurrentInstance().getExternalContext().getRemoteUser());
|
||||
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put(WEB_USER_SESSION_KEY, user);
|
||||
|
||||
/*
|
||||
try {
|
||||
Properties properties = new Properties();
|
||||
properties.setProperty (Context.INITIAL_CONTEXT_FACTORY,"org.apache.openejb.client.LocalInitialContextFactory");
|
||||
InitialContext ic = new InitialContext(properties);
|
||||
Object object = ic.lookup("java:app/demo/vascServiceManager");
|
||||
System.out.println("ob: "+object);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
try {
|
||||
InitialContext ic = new InitialContext();
|
||||
LoginUserController object = (LoginUserController)ic.lookup("java:app/demo/loginUserController");
|
||||
System.out.println("ob: "+object);
|
||||
System.out.println("login: "+object.doClientLogin());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
*/
|
||||
|
||||
return user;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,8 +18,8 @@ import javax.faces.event.SystemEventListener;
|
|||
import org.richfaces.resource.ResourceKey;
|
||||
|
||||
|
||||
import com.sun.faces.renderkit.html_basic.ScriptRenderer;
|
||||
import com.sun.faces.renderkit.html_basic.StylesheetRenderer;
|
||||
//import com.sun.faces.renderkit.html_basic.ScriptRenderer;
|
||||
//import com.sun.faces.renderkit.html_basic.StylesheetRenderer;
|
||||
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ public class UrlRewriteConfigurationProvider extends HttpConfigurationProvider {
|
|||
|
||||
return ConfigurationBuilder.begin()
|
||||
|
||||
.addRule(Join.path("/yoyo").to("/html/index.jsf"))
|
||||
//.addRule(Join.path("/yoyo").to("/html/index.jsf"))
|
||||
|
||||
.defineRule()
|
||||
.when(Direction.isInbound().
|
||||
|
|
|
|||
|
|
@ -1,212 +0,0 @@
|
|||
/*
|
||||
* Copyright 2009-2012 forwardfire.net All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
|
||||
* the following disclaimer in the documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
||||
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||||
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
package net.forwardfire.vasc.demo.tech.web.menu;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.sql.Connection;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import javax.naming.Context;
|
||||
import javax.naming.InitialContext;
|
||||
import javax.naming.NamingException;
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import net.forwardfire.vasc.demo.tech.web.beans.UserController;
|
||||
import net.forwardfire.vasc.demo.tech.web.menu.model.VascMenu;
|
||||
import net.forwardfire.vasc.demo.tech.web.menu.model.VascMenuType;
|
||||
|
||||
/**
|
||||
* MenuController Shows the menu for the user.
|
||||
*
|
||||
* @author Willem Cazander
|
||||
* @version 1.0 May 19, 2012
|
||||
*/
|
||||
public class MenuController implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -6820749860984575869L;
|
||||
private List<VascMenu> userVascMenu = null;
|
||||
private VascMenuComparator vascMenuComparator = null;
|
||||
private UserController userController = null;
|
||||
|
||||
|
||||
public List<VascMenu> fetchVascMenu() {
|
||||
//if (userVascMenu!=null) {
|
||||
// return userVascMenu;
|
||||
//}
|
||||
vascMenuComparator = new VascMenuComparator();
|
||||
userVascMenu = new ArrayList<VascMenu>(50);
|
||||
|
||||
/*
|
||||
MetaModelDataContextJndiDataSource dsFactory = new MetaModelDataContextJndiDataSource();
|
||||
dsFactory.setJndiName("java:comp/env/jdbc/vascDemoDS");
|
||||
DataContext ds = dsFactory.getDataContext();
|
||||
Table table = ds.getDefaultSchema().getTableByName("vasc_menu");
|
||||
DataSet data = ds.query().from(table).select(table.getColumns()).execute();
|
||||
List<VascMenu> result = new ArrayList<VascMenu>(50);
|
||||
Iterator<Row> i = data.iterator();
|
||||
while (i.hasNext()) {
|
||||
Row row = i.next();
|
||||
}*/
|
||||
|
||||
|
||||
Connection connection = null;
|
||||
try {
|
||||
DataSource ds = getDataSource("java:comp/env/jdbc/DemoManagerDataDS");
|
||||
connection = ds.getConnection();
|
||||
Statement s = connection.createStatement();
|
||||
s.execute("SELECT * FROM VASC_MENU");
|
||||
ResultSet rs = s.getResultSet();
|
||||
//int cols = rs.getMetaData().getColumnCount();
|
||||
while (rs.next()) {
|
||||
VascMenu menu = new VascMenu();
|
||||
menu.setId(rs.getInt(1));
|
||||
menu.setHref(rs.getString(2));
|
||||
menu.setTitle(rs.getString(3));
|
||||
menu.setTarget(rs.getString(4));
|
||||
menu.setActive(rs.getBoolean(5));
|
||||
menu.setRoles(rs.getString(6));
|
||||
menu.setMenuOrder(rs.getInt(7));
|
||||
menu.setMenuType(VascMenuType.valueOf(rs.getString(8)));
|
||||
if (filterVascMenuRoles(menu)==false) {
|
||||
continue;
|
||||
}
|
||||
userVascMenu.add(menu);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (connection!=null) {
|
||||
try {
|
||||
connection.close();
|
||||
} catch (Exception e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return userVascMenu;
|
||||
}
|
||||
|
||||
private DataSource getDataSource(String name) throws SQLException {
|
||||
try {
|
||||
Context initialContext = new InitialContext();
|
||||
DataSource datasource = (DataSource)initialContext.lookup(name);
|
||||
if ( datasource == null ) {
|
||||
throw new SQLException("Cannot lookup datasource: "+name);
|
||||
}
|
||||
return datasource;
|
||||
} catch ( NamingException e ) {
|
||||
throw new SQLException("Cannot get connection " + e,e);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean filterVascMenuRoles(VascMenu menu) {
|
||||
if (menu.getActive()!=null && menu.getActive()==false) {
|
||||
return false;
|
||||
}
|
||||
if (menu.getRoles()!=null && menu.getRoles().isEmpty()==false) {
|
||||
String[] roles = menu.getRoles().split(",");
|
||||
for (String role:roles) {
|
||||
if (role.isEmpty()) {
|
||||
continue;
|
||||
}
|
||||
if (userController.hasUserRole(role)==false) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private List<VascMenu> getMenuFiltered(VascMenuType type) {
|
||||
if (type==null) {
|
||||
throw new NullPointerException("Can't filter on null type.");
|
||||
}
|
||||
List<VascMenu> result = new ArrayList<VascMenu>(15);
|
||||
for (VascMenu menu:fetchVascMenu()) {
|
||||
if (type.equals(menu.getMenuType())) {
|
||||
result.add(menu);
|
||||
}
|
||||
}
|
||||
Collections.sort(result,vascMenuComparator);
|
||||
return result;
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuBarLeft() {
|
||||
return getMenuFiltered(VascMenuType.BAR_LEFT);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuBarRight() {
|
||||
return getMenuFiltered(VascMenuType.BAR_RIGHT);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuBarBottom() {
|
||||
return getMenuFiltered(VascMenuType.BAR_BOTTOM);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuPageIndex() {
|
||||
return getMenuFiltered(VascMenuType.PAGE_INDEX);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuPageUserLeft() {
|
||||
return getMenuFiltered(VascMenuType.PAGE_USER_LEFT);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuPageUserRight() {
|
||||
return getMenuFiltered(VascMenuType.PAGE_USER_RIGHT);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenuPageAdmin() {
|
||||
return getMenuFiltered(VascMenuType.PAGE_ADMIN);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenu0() {
|
||||
return getMenuFiltered(VascMenuType.MENU0);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenu1() {
|
||||
return getMenuFiltered(VascMenuType.MENU1);
|
||||
}
|
||||
|
||||
public List<VascMenu> getMenu2() {
|
||||
return getMenuFiltered(VascMenuType.MENU2);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the userController
|
||||
*/
|
||||
public UserController getUserController() {
|
||||
return userController;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param userController the userController to set
|
||||
*/
|
||||
public void setUserController(UserController userController) {
|
||||
this.userController = userController;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
/*
|
||||
* Copyright 2009-2012 forwardfire.net All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
|
||||
* the following disclaimer in the documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
||||
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||||
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
package net.forwardfire.vasc.demo.tech.web.menu;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Comparator;
|
||||
|
||||
import net.forwardfire.vasc.demo.tech.web.menu.model.VascMenu;
|
||||
|
||||
|
||||
/**
|
||||
* VascMenuComparator orders the menu items.
|
||||
*
|
||||
* @author Willem Cazander
|
||||
* @version 1.0 May 19, 2012
|
||||
*/
|
||||
public class VascMenuComparator implements Serializable,Comparator<VascMenu> {
|
||||
|
||||
private static final long serialVersionUID = 386631856823832371L;
|
||||
|
||||
public int compare(VascMenu m1, VascMenu m2) {
|
||||
if (m1.getMenuOrder()==null) {
|
||||
return 1;
|
||||
}
|
||||
if (m2.getMenuOrder()==null) {
|
||||
return -1;
|
||||
}
|
||||
return m1.getMenuOrder().compareTo(m2.getMenuOrder());
|
||||
}
|
||||
}
|
||||
|
|
@ -1,153 +0,0 @@
|
|||
/*
|
||||
* Copyright 2009-2012 forwardfire.net All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
|
||||
* the following disclaimer in the documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
||||
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||||
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
package net.forwardfire.vasc.demo.tech.web.menu.model;
|
||||
|
||||
/**
|
||||
* VascMenu stores menu item information.
|
||||
*
|
||||
* @author Willem Cazander
|
||||
* @version 1.0 May 19, 2012
|
||||
*/
|
||||
public class VascMenu {
|
||||
|
||||
private Integer id = null;
|
||||
private String href = null;
|
||||
private String title = null;
|
||||
private String target = null;
|
||||
private Boolean active = null;
|
||||
private String roles = null;
|
||||
private Integer menuOrder = null;
|
||||
private VascMenuType menuType = null;
|
||||
|
||||
/**
|
||||
* @return the id
|
||||
*/
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param id the id to set
|
||||
*/
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the href
|
||||
*/
|
||||
public String getHref() {
|
||||
return href;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param href the href to set
|
||||
*/
|
||||
public void setHref(String href) {
|
||||
this.href = href;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the title
|
||||
*/
|
||||
public String getTitle() {
|
||||
return title;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param title the title to set
|
||||
*/
|
||||
public void setTitle(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the target
|
||||
*/
|
||||
public String getTarget() {
|
||||
return target;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param target the target to set
|
||||
*/
|
||||
public void setTarget(String target) {
|
||||
this.target = target;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the active
|
||||
*/
|
||||
public Boolean getActive() {
|
||||
return active;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param active the active to set
|
||||
*/
|
||||
public void setActive(Boolean active) {
|
||||
this.active = active;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the roles
|
||||
*/
|
||||
public String getRoles() {
|
||||
return roles;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param roles the roles to set
|
||||
*/
|
||||
public void setRoles(String roles) {
|
||||
this.roles = roles;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the menuOrder
|
||||
*/
|
||||
public Integer getMenuOrder() {
|
||||
return menuOrder;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param menuOrder the menuOrder to set
|
||||
*/
|
||||
public void setMenuOrder(Integer menuOrder) {
|
||||
this.menuOrder = menuOrder;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the menuType
|
||||
*/
|
||||
public VascMenuType getMenuType() {
|
||||
return menuType;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param menuType the menuType to set
|
||||
*/
|
||||
public void setMenuType(VascMenuType menuType) {
|
||||
this.menuType = menuType;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
/*
|
||||
* Copyright 2009-2012 forwardfire.net All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
|
||||
* the following disclaimer in the documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
||||
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||||
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
package net.forwardfire.vasc.demo.tech.web.menu.model;
|
||||
|
||||
/**
|
||||
* VascMenuType defines all menu lists on page.
|
||||
*
|
||||
* @author Willem Cazander
|
||||
* @version 1.0 May 26, 2012
|
||||
*/
|
||||
public enum VascMenuType {
|
||||
|
||||
BAR_LEFT,
|
||||
BAR_RIGHT,
|
||||
BAR_BOTTOM,
|
||||
|
||||
MENU0,
|
||||
MENU1,
|
||||
MENU2,
|
||||
|
||||
PAGE_INDEX,
|
||||
PAGE_USER_LEFT,
|
||||
PAGE_USER_RIGHT,
|
||||
PAGE_ADMIN,
|
||||
PAGE_HELP
|
||||
}
|
||||
|
|
@ -36,8 +36,8 @@ import javax.naming.InitialContext;
|
|||
import javax.naming.NamingException;
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import net.forwardfire.vasc.demo.tech.ejb3.menu.model.VascMenuWebComparator;
|
||||
import net.forwardfire.vasc.demo.tech.web.beans.UserController;
|
||||
import net.forwardfire.vasc.demo.tech.web.menu.VascMenuComparator;
|
||||
|
||||
/**
|
||||
* MenuController Shows the menu for the user.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
|
||||
<properties>
|
||||
<comment>
|
||||
Files to load
|
||||
</comment>
|
||||
<entry key="vascController">openejb:Resource/vasc/server-tech</entry>
|
||||
</properties>
|
||||
|
|
@ -12,8 +12,8 @@ jawr.debug.overrideKey=jawr_debug
|
|||
jawr.config.reload.refreshKey=jawr_refresh
|
||||
|
||||
# Development mode flags
|
||||
jawr.debug.on=true
|
||||
jawr.config.reload.interval=3
|
||||
#jawr.debug.on=true
|
||||
#jawr.config.reload.interval=3
|
||||
|
||||
|
||||
#
|
||||
|
|
@ -42,6 +42,7 @@ jawr.js.bundle.skin-switcher.mappings=skinSwitcher:switcher.js
|
|||
jawr.js.bundle.vasc.mappings=/js/vasc-jsf.js
|
||||
|
||||
jawr.js.bundle.richfaces.mappings=\
|
||||
jar:/META-INF/resources/javax.faces/jsf.js,\
|
||||
jar:/META-INF/resources/jquery.js,\
|
||||
jar:/META-INF/resources/jquery.focus.js,\
|
||||
jar:/META-INF/resources/jquery.position.js,\
|
||||
|
|
@ -52,7 +53,9 @@ jar:/META-INF/resources/richfaces-queue.js,\
|
|||
jar:/META-INF/resources/richfaces-event.js,\
|
||||
jar:/META-INF/resources/richfaces-selection.js,\
|
||||
jar:/META-INF/resources/richfaces-jsf-event.js,\
|
||||
jar:/META-INF/resources/richfaces-jsf-log.js
|
||||
jar:/META-INF/resources/richfaces-jsf-log.js,\
|
||||
jar:/META-INF/resources/org.richfaces/datatable.js
|
||||
|
||||
|
||||
jawr.js.bundle.richfaces-atmosphere.mappings=\
|
||||
jar:/META-INF/resources/net.java.dev.atmosphere/jquery-atmosphere.js
|
||||
|
|
|
|||
|
|
@ -0,0 +1,31 @@
|
|||
<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
|
||||
version="3.0">
|
||||
<enterprise-beans>
|
||||
<session>
|
||||
<ejb-name>vascServiceManager</ejb-name>
|
||||
<business-local>net.forwardfire.vasc.ejb3.VascServiceManagerLocal</business-local>
|
||||
<business-remote>net.forwardfire.vasc.ejb3.VascServiceManagerRemote</business-remote>
|
||||
<ejb-class>net.forwardfire.vasc.ejb3.VascServiceManagerImpl</ejb-class>
|
||||
<session-type>Stateless</session-type>
|
||||
<transaction-type>Container</transaction-type>
|
||||
</session>
|
||||
<session>
|
||||
<ejb-name>loginUserController</ejb-name>
|
||||
<business-local>net.forwardfire.vasc.demo.tech.ejb3.user.LoginUserControllerLocal</business-local>
|
||||
<business-remote>net.forwardfire.vasc.demo.tech.ejb3.user.LoginUserControllerRemote</business-remote>
|
||||
<ejb-class>net.forwardfire.vasc.demo.tech.ejb3.user.LoginUserControllerImpl</ejb-class>
|
||||
<session-type>Stateless</session-type>
|
||||
<transaction-type>Container</transaction-type>
|
||||
</session>
|
||||
<session>
|
||||
<ejb-name>vascMenuController</ejb-name>
|
||||
<business-local>net.forwardfire.vasc.demo.tech.ejb3.menu.VascMenuControllerLocal</business-local>
|
||||
<business-remote>net.forwardfire.vasc.demo.tech.ejb3.menu.VascMenuControllerRemote</business-remote>
|
||||
<ejb-class>net.forwardfire.vasc.demo.tech.ejb3.menu.VascMenuControllerImpl</ejb-class>
|
||||
<session-type>Stateless</session-type>
|
||||
<transaction-type>Container</transaction-type>
|
||||
</session>
|
||||
</enterprise-beans>
|
||||
</ejb-jar>
|
||||
|
|
@ -15,9 +15,9 @@
|
|||
<default-locale>en</default-locale>
|
||||
</locale-config>
|
||||
<system-event-listener>
|
||||
<system-event-listener-class>net.forwardfire.vasc.demo.tech.web.faces.NoneLoadStyleResourceEventListener</system-event-listener-class>
|
||||
<system-event-class>javax.faces.event.PreRenderViewEvent</system-event-class>
|
||||
</system-event-listener>
|
||||
<system-event-listener-class>net.forwardfire.vasc.demo.tech.web.faces.NoneLoadStyleResourceEventListener</system-event-listener-class>
|
||||
<system-event-class>javax.faces.event.PreRenderViewEvent</system-event-class>
|
||||
</system-event-listener>
|
||||
</application>
|
||||
|
||||
<managed-bean>
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
<managed-bean>
|
||||
<description>Controls the display of the dynamic menus.</description>
|
||||
<managed-bean-name>menuController</managed-bean-name>
|
||||
<managed-bean-class>net.forwardfire.vasc.demo.tech.web.menu.MenuController</managed-bean-class>
|
||||
<managed-bean-class>net.forwardfire.vasc.demo.tech.web.beans.MenuController</managed-bean-class>
|
||||
<managed-bean-scope>session</managed-bean-scope>
|
||||
<managed-property>
|
||||
<property-name>userController</property-name>
|
||||
|
|
@ -52,14 +52,14 @@
|
|||
<managed-bean-scope>session</managed-bean-scope>
|
||||
</managed-bean>
|
||||
|
||||
<!-- This should be in jawr jar file faces so it gets automatic done. -->
|
||||
<!-- This should be in jawr jar file faces so it gets automatic done. -->
|
||||
<component>
|
||||
<component-type>jawr.JavascriptBundle</component-type>
|
||||
<component-type>jawr.JavascriptBundle</component-type>
|
||||
<component-class>net.jawr.web.taglib.jsf.JavascriptBundleTag</component-class>
|
||||
</component>
|
||||
<component>
|
||||
<component-type>jawr.CSSBundle</component-type>
|
||||
<component-class>net.jawr.web.taglib.jsf.CSSBundleTag</component-class>
|
||||
</component>
|
||||
|
||||
|
||||
</faces-config>
|
||||
|
|
@ -62,22 +62,32 @@
|
|||
</h:outputFormat>
|
||||
</p>
|
||||
<h:form>
|
||||
<ul class="actionboxtab">
|
||||
<li><a class="active"><h:outputText value="#{entrySupport.i18nMap['vasc.action.editRowAction.name']}"/></a></li>
|
||||
<ui:repeat var="link" value="#{entrySupport.vascLinkEntriesEditTab}" rendered="#{!entrySupport.vascEntry.vascFrontendController.vascEntryState.editCreate}">
|
||||
<li><h:commandLink actionListener="#{entrySupport.linkEditAction}" value="#{entrySupport.i18nMap[link.name]}" type="#{link.id}"/></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
<p class="vascButtons">
|
||||
<h:commandButton onclick="document.getElementById('ef:save').click();return false;" value="#{entrySupport.i18nMap['generic.vasc.jsf.action.save']}"/>
|
||||
<h:commandButton onclick="document.getElementById('ef:cancel').click();return false;" value="#{entrySupport.i18nMap['generic.vasc.jsf.action.cancel']}" />
|
||||
</p>
|
||||
</h:form>
|
||||
<h:form>
|
||||
<div class="actiontab">
|
||||
<ul class="actionboxtab">
|
||||
<li><a class="active"><h:outputText value="#{entrySupport.i18nMap['vasc.action.editRowAction.name']}"/></a></li>
|
||||
<ui:repeat var="link" value="#{entrySupport.vascLinkEntriesEditTab}" rendered="#{!entrySupport.vascEntry.vascFrontendController.vascEntryState.editCreate}">
|
||||
<li><h:commandLink actionListener="#{entrySupport.linkEditAction}" value="#{entrySupport.i18nMap[link.name]}" type="#{link.id}"/></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
<div class="actiontabline"/>
|
||||
</div>
|
||||
<!--
|
||||
<h:panelGrid columns="1" styleClass="actionbox">
|
||||
<h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
</h:panelGrid>
|
||||
-->
|
||||
</h:form>
|
||||
<br/>
|
||||
<h:form>
|
||||
<h:panelGrid columns="3" id="injectEditFieldsId" styleClass="actionbox"/>
|
||||
<p>
|
||||
<h:commandButton actionListener="#{entrySupport.saveAction}" value="#{entrySupport.i18nMap['generic.vasc.jsf.action.save']}"/>
|
||||
<h:commandButton actionListener="#{entrySupport.cancelAction}" value="#{entrySupport.i18nMap['generic.vasc.jsf.action.cancel']}" />
|
||||
<h:form id="ef">
|
||||
<h:panelGrid columns="3" id="injectEditFieldsId" styleClass="vascEditBox"/>
|
||||
<p class="vascButtons">
|
||||
<h:commandButton id="save" actionListener="#{entrySupport.saveAction}" value="#{entrySupport.i18nMap['generic.vasc.jsf.action.save']}"/>
|
||||
<h:commandButton id="cancel" actionListener="#{entrySupport.cancelAction}" value="#{entrySupport.i18nMap['generic.vasc.jsf.action.cancel']}" />
|
||||
</p>
|
||||
</h:form>
|
||||
</h:panelGroup>
|
||||
|
|
@ -92,9 +102,8 @@
|
|||
</h:outputFormat>
|
||||
</p>
|
||||
<h:form>
|
||||
<p><!-- rendered="{entrySupport.vascEntry.vascAdminCreate}" -->
|
||||
<p class="vascButtons"><!-- rendered="{entrySupport.vascEntry.vascAdminCreate}" -->
|
||||
<h:commandButton actionListener="#{entrySupport.addAction}"
|
||||
|
||||
value="#{entrySupport.i18nMap['vasc.action.addRowAction.name']}"
|
||||
title="#{entrySupport.i18nMap['vasc.action.addRowAction.description']}"
|
||||
/>
|
||||
|
|
@ -107,22 +116,25 @@
|
|||
</h:form>
|
||||
<h:form>
|
||||
<rich:dataTable id="itci" var="tableRecord" value="#{entrySupport.tableDataModel}" rowClasses="odd,even">
|
||||
<f:facet name="header">
|
||||
<f:facet name="header">
|
||||
<rich:columnGroup>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left">
|
||||
<ul class="actionboxtab">
|
||||
<li>
|
||||
<h:panelGroup rendered="#{!entrySupport.renderBackAction}">
|
||||
<a class="active"><h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.listOption.header']}"/></a>
|
||||
</h:panelGroup>
|
||||
<h:commandLink actionListener="#{entrySupport.backEditAction}" value="#{entrySupport.i18nMap['vasc.action.editRowAction.name']}" rendered="#{entrySupport.renderBackEditAction}"/>
|
||||
</li>
|
||||
<ui:repeat var="link" value="#{entrySupport.vascLinkEntriesEditTabParentState}">
|
||||
<li><h:commandLink actionListener="#{entrySupport.linkListAction}" value="#{entrySupport.i18nMap[link.name]}" type="#{link.id}" styleClass="#{link.vascEntryId==entrySupport.vascEntry.id?'active':''}"/></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
<div class="actiontab">
|
||||
<ul class="actionboxtab">
|
||||
<li>
|
||||
<h:panelGroup rendered="#{!entrySupport.renderBackAction}">
|
||||
<a class="active"><h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.listOption.header']}"/></a>
|
||||
</h:panelGroup>
|
||||
<h:commandLink actionListener="#{entrySupport.backEditAction}" value="#{entrySupport.i18nMap['vasc.action.editRowAction.name']}" rendered="#{entrySupport.renderBackEditAction}"/>
|
||||
</li>
|
||||
<ui:repeat var="link" value="#{entrySupport.vascLinkEntriesEditTabParentState}">
|
||||
<li><h:commandLink actionListener="#{entrySupport.linkListAction}" value="#{entrySupport.i18nMap[link.name]}" type="#{link.id}" styleClass="#{link.vascEntryId==entrySupport.vascEntry.id?'active':''}"/></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
<div class="actiontabline"/>
|
||||
</div>
|
||||
<h:panelGrid columns="1" styleClass="actionbox">
|
||||
<h:panelGrid columns="2" id="itoi"/>
|
||||
<h:panelGrid id="itoi" columns="2" columnClasses="itoiOption,itoiOptionValue"/>
|
||||
<h:panelGroup>
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.listOption.search']}"/>
|
||||
<h:inputText value="#{entrySupport.searchString}"/>
|
||||
|
|
@ -176,74 +188,76 @@
|
|||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left" breakRowBefore="true">
|
||||
<h:panelGroup styleClass="table_options_top">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.rows']}" />
|
||||
<h:inputText required="false" value="#{entrySupport.vascEntry.vascFrontendController.vascEntryState.vascBackendState.pageSize}" size="4"/>
|
||||
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.pagerDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedDirectPage}" valueChangeListener="#{entrySupport.processDirectPageChange}">
|
||||
<f:selectItems value="#{entrySupport.directPageItems}" />
|
||||
</h:selectOneMenu>
|
||||
|
||||
<img src="#{facesContext.externalContext.requestContextPath}/img/icon_download.png" alt="#{entrySupport.i18nMap['generic.vasc.jsf.table.download.img']}" width="15" height="15" /><h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.downloadDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedExporterAction}" valueChangeListener="#{entrySupport.processDirectDownloadChange}">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.rows']}" />
|
||||
<h:inputText required="false" value="#{entrySupport.vascEntry.vascFrontendController.vascEntryState.vascBackendState.pageSize}" size="4"/>
|
||||
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.pagerDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedDirectPage}" valueChangeListener="#{entrySupport.processDirectPageChange}">
|
||||
<f:selectItems value="#{entrySupport.directPageItems}" />
|
||||
</h:selectOneMenu>
|
||||
|
||||
<img src="#{facesContext.externalContext.requestContextPath}/img/icon_download.png" alt="#{entrySupport.i18nMap['generic.vasc.jsf.table.download.img']}" width="15" height="15" /><h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.downloadDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedExporterAction}" valueChangeListener="#{entrySupport.processDirectDownloadChange}">
|
||||
<f:selectItems value="#{entrySupport.globalExportItems}" />
|
||||
</h:selectOneMenu>
|
||||
|
||||
<img src="#{facesContext.externalContext.requestContextPath}/img/icon_print.png" alt="#{entrySupport.i18nMap['generic.vasc.jsf.table.printer.img']}" width="15" height="15" /><h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:outputFormat value="#{entrySupport.i18nMap['generic.vasc.jsf.table.resultText']}">
|
||||
<h:outputFormat value="#{entrySupport.i18nMap['generic.vasc.jsf.table.resultText']}">
|
||||
<f:param value="#{entrySupport.pageStartCount}" />
|
||||
<f:param value="#{entrySupport.pageStopCount}" />
|
||||
<f:param value="#{entrySupport.pageTotalRecordCount}" />
|
||||
</h:outputFormat>
|
||||
</h:panelGroup>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left" breakRowBefore="true" rendered="#{entrySupport.hasMultiRowActions}">
|
||||
</h:panelGroup>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left" breakRowBefore="true" rendered="#{entrySupport.hasMultiRowActions}">
|
||||
<div class="vascSelectAll">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.multiAction.selectAll']}"/>
|
||||
<h:selectBooleanCheckbox id="selectAllBox" required="false" onchange="javascript:selectAllCheckboxes(this);return false;" value="#{entrySupport.selectAllValue}"/>
|
||||
<h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:selectOneMenu id="multiAction" required="false" value="#{entrySupport.selectedMultiRowAction}" onchange="javascript:this.form.submit(); return false;" valueChangeListener="#{entrySupport.processMultiRowActionChange}">
|
||||
<f:selectItems value="#{entrySupport.multiRowActionItems}" />
|
||||
</h:selectOneMenu>
|
||||
</div>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalFieldColumnCount}" breakRowBefore="true">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.tableHeader.fields']}" styleClass="table_sub_header"/>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalLinkColumnCount}" rendered="#{entrySupport.totalLinkColumnCount != 0}">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.tableHeader.links']}" styleClass="table_sub_header"/>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalActionColumnCount}" rendered="#{entrySupport.totalActionColumnCount != 0}">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.tableHeader.actions']}" styleClass="table_sub_header"/>
|
||||
</rich:column>
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.tableHeader.fields']}" styleClass="table_sub_header"/>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalLinkColumnCount}" rendered="#{entrySupport.totalLinkColumnCount != 0}">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.tableHeader.links']}" styleClass="table_sub_header"/>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalActionColumnCount}" rendered="#{entrySupport.totalActionColumnCount != 0}">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.tableHeader.actions']}" styleClass="table_sub_header"/>
|
||||
</rich:column>
|
||||
</rich:columnGroup>
|
||||
</f:facet>
|
||||
<f:facet name="footer">
|
||||
</f:facet>
|
||||
<f:facet name="footer">
|
||||
<rich:columnGroup>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left">
|
||||
<h:panelGroup styleClass="table_options_bottom">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.rows']}" />
|
||||
<h:inputText required="false" value="#{entrySupport.vascEntry.vascFrontendController.vascEntryState.vascBackendState.pageSize}" size="4"/>
|
||||
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.pagerDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedDirectPage}" valueChangeListener="#{entrySupport.processDirectPageChange}">
|
||||
<f:selectItems value="#{entrySupport.directPageItems}" />
|
||||
</h:selectOneMenu>
|
||||
|
||||
<img src="#{facesContext.externalContext.requestContextPath}/img/icon_download.png" alt="#{entrySupport.i18nMap['generic.vasc.jsf.table.download.img']}" width="15" height="15" /><h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.downloadDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedExporterAction}" valueChangeListener="#{entrySupport.processDirectDownloadChange}">
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.rows']}" />
|
||||
<h:inputText required="false" value="#{entrySupport.vascEntry.vascFrontendController.vascEntryState.vascBackendState.pageSize}" size="4"/>
|
||||
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.pagerDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedDirectPage}" valueChangeListener="#{entrySupport.processDirectPageChange}">
|
||||
<f:selectItems value="#{entrySupport.directPageItems}" />
|
||||
</h:selectOneMenu>
|
||||
|
||||
<img src="#{facesContext.externalContext.requestContextPath}/img/icon_download.png" alt="#{entrySupport.i18nMap['generic.vasc.jsf.table.download.img']}" width="15" height="15" /><h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:outputText value="#{entrySupport.i18nMap['generic.vasc.jsf.table.downloadDirect']}" />
|
||||
<h:selectOneMenu onchange="javascript:this.form.submit(); return false;" value="#{entrySupport.selectedExporterAction}" valueChangeListener="#{entrySupport.processDirectDownloadChange}">
|
||||
<f:selectItems value="#{entrySupport.globalExportItems}" />
|
||||
</h:selectOneMenu>
|
||||
|
||||
<img src="#{facesContext.externalContext.requestContextPath}/img/icon_print.png" alt="#{entrySupport.i18nMap['generic.vasc.jsf.table.printer.img']}" width="15" height="15" /><h:outputText value="&nbsp;&nbsp;" escape="false"/>
|
||||
<h:outputFormat value="#{entrySupport.i18nMap['generic.vasc.jsf.table.resultText']}">
|
||||
<h:outputFormat value="#{entrySupport.i18nMap['generic.vasc.jsf.table.resultText']}">
|
||||
<f:param value="#{entrySupport.pageStartCount}" />
|
||||
<f:param value="#{entrySupport.pageStopCount}" />
|
||||
<f:param value="#{entrySupport.pageTotalRecordCount}" />
|
||||
</h:outputFormat>
|
||||
</h:panelGroup>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left" breakRowBefore="true">
|
||||
</h:panelGroup>
|
||||
</rich:column>
|
||||
<rich:column colspan="#{entrySupport.totalColumnCount}" styleClass="text_left" breakRowBefore="true">
|
||||
<ul class="paging">
|
||||
<li class="paging_atstart">
|
||||
<h:commandLink rendered="#{entrySupport.hasPagePreviousAction}" value="#{entrySupport.i18nMap['generic.vasc.jsf.pager.previous']}"
|
||||
|
|
@ -292,16 +306,18 @@
|
|||
</rich:dataTable>
|
||||
</h:form>
|
||||
<h:form>
|
||||
<p> <!-- rendered="{entrySupport.vascEntry.vascAdminCreate}" -->
|
||||
<p class="vascButtons"> <!-- rendered="{entrySupport.vascEntry.vascAdminCreate}" -->
|
||||
<h:commandButton actionListener="#{entrySupport.addAction}"
|
||||
|
||||
value="#{entrySupport.i18nMap['vasc.action.addRowAction.name']}"
|
||||
title="#{entrySupport.i18nMap['vasc.action.addRowAction.description']}"/>
|
||||
<h:commandButton actionListener="#{entrySupport.backAction}"
|
||||
rendered="#{entrySupport.renderBackAction}"
|
||||
value="#{entrySupport.i18nMap['generic.vasc.jsf.action.back']}"
|
||||
/>
|
||||
</p>
|
||||
</h:form>
|
||||
</h:panelGroup>
|
||||
</f:facet>
|
||||
</v:vascEntry>
|
||||
|
||||
</ui:define>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:rich="http://richfaces.org/rich"
|
||||
>
|
||||
<div id="body-deco-logo">
|
||||
<div id="body-deco-logo-div">
|
||||
|
|
@ -17,36 +16,4 @@
|
|||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="body-deco-menu">
|
||||
<div id="body-deco-menu0-div">
|
||||
<h4>
|
||||
<span><h:outputText value="menu0"/></span>
|
||||
</h4>
|
||||
<ul>
|
||||
<ui:repeat var="menuEntry" value="#{menuController.menu0}">
|
||||
<li><a href="#{contextPathController.rootPath}#{menuEntry.href}" title="#{menuEntry.title}" target="#{menuEntry.target}">#{menuEntry.title}</a></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="body-deco-menu1-div">
|
||||
<h4>
|
||||
<span><h:outputText value="menu1"/></span>
|
||||
</h4>
|
||||
<ul>
|
||||
<ui:repeat var="menuEntry" value="#{menuController.menu1}">
|
||||
<li><a href="#{contextPathController.rootPath}#{menuEntry.href}" title="#{menuEntry.title}" target="#{menuEntry.target}">#{menuEntry.title}</a></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="body-deco-menu2-div">
|
||||
<h4>
|
||||
<span><h:outputText value="menu2"/></span>
|
||||
</h4>
|
||||
<ul>
|
||||
<ui:repeat var="menuEntry" value="#{menuController.menu2}">
|
||||
<li><a href="#{contextPathController.rootPath}#{menuEntry.href}" title="#{menuEntry.title}" target="#{menuEntry.target}">#{menuEntry.title}</a></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ui:composition>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:rich="http://richfaces.org/rich"
|
||||
>
|
||||
<div id="body-footer">
|
||||
<div id="body-footer-text">
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:rich="http://richfaces.org/rich"
|
||||
>
|
||||
<div id="page-header">
|
||||
<div id="page-header-left">
|
||||
|
|
|
|||
|
|
@ -0,0 +1,21 @@
|
|||
<ui:composition
|
||||
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"
|
||||
>
|
||||
<div id="body-deco-menu">
|
||||
<ui:repeat var="menuGroup" value="#{menuController.vascMenuGroup}">
|
||||
<div id="body-deco-menu-group">
|
||||
<h4>
|
||||
<span><h:outputText value="#{menuGroup.title}"/></span>
|
||||
</h4>
|
||||
<ul>
|
||||
<ui:repeat var="menu" value="#{menuGroup.menus}">
|
||||
<li><a href="#{contextPathController.rootPath}/vasc/#{menu.vascEntryId}/list,jsf" title="#{menu.title}">#{menu.title}</a></li>
|
||||
</ui:repeat>
|
||||
</ul>
|
||||
</div>
|
||||
</ui:repeat>
|
||||
</div>
|
||||
</ui:composition>
|
||||
|
|
@ -3,7 +3,6 @@
|
|||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:rich="http://richfaces.org/rich"
|
||||
>
|
||||
<f:view>
|
||||
<div id="body-view">
|
||||
|
|
@ -11,16 +10,21 @@
|
|||
<ui:include src="/WEB-INF/template/structure/main-body-header.xhtml"/>
|
||||
</ui:insert>
|
||||
<ui:insert name="main_body_content">
|
||||
<div id="body-content">
|
||||
<h1><ui:insert name="page_title"/></h1>
|
||||
<h:messages globalOnly="true" />
|
||||
<ui:insert name="page_content"/>
|
||||
<ui:insert name="main_body_footer">
|
||||
<ui:include src="/WEB-INF/template/structure/main-body-footer.xhtml"/>
|
||||
<div id="body-container">
|
||||
<ui:insert name="main_body_menu">
|
||||
<ui:include src="/WEB-INF/template/structure/main-body-menu.xhtml"/>
|
||||
</ui:insert>
|
||||
<ui:insert name="main_body_decorator">
|
||||
<ui:include src="/WEB-INF/template/structure/main-body-decorator.xhtml"/>
|
||||
</ui:insert>
|
||||
<div id="body-content">
|
||||
<h1><ui:insert name="page_title"/></h1>
|
||||
<h:messages globalOnly="true" />
|
||||
<ui:insert name="page_content"/>
|
||||
<ui:insert name="main_body_footer">
|
||||
<ui:include src="/WEB-INF/template/structure/main-body-footer.xhtml"/>
|
||||
</ui:insert>
|
||||
</div>
|
||||
</div>
|
||||
</ui:insert>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:rich="http://richfaces.org/rich"
|
||||
xmlns:jawr="https://jawr.dev.java.net/jsf/facelets"
|
||||
>
|
||||
<ui:insert name="main_head_content_type">
|
||||
|
|
@ -14,6 +13,9 @@
|
|||
<meta name="description" content="#{i18n['Application.web.meta.description']}"/>
|
||||
<meta name="keywords" content="#{i18n['Application.web.meta.keywords']}"/>
|
||||
</ui:insert>
|
||||
<ui:insert name="main_head_icon">
|
||||
<link rel="icon" href="#{contextPathController.rootPath}/img/favicon.ico"/>
|
||||
</ui:insert>
|
||||
<title>
|
||||
<ui:insert name="main_head_title">
|
||||
<ui:insert name="page_title"/>
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app version="3.0" metadata-complete="false"
|
||||
xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
|
||||
xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
|
||||
<!-- http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd -->
|
||||
<display-name>Vasc Demo Tech Web Application</display-name>
|
||||
<welcome-file-list>
|
||||
<welcome-file>/html/index.jsf</welcome-file>
|
||||
<welcome-file>/html/index.jsf</welcome-file>
|
||||
</welcome-file-list>
|
||||
<session-config>
|
||||
<session-timeout>4</session-timeout>
|
||||
|
|
@ -14,17 +14,17 @@
|
|||
</session-config>
|
||||
|
||||
<security-role>
|
||||
<role-name>user</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<role-name>admin-company</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<role-name>admin-system</role-name>
|
||||
</security-role>
|
||||
<role-name>user</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<role-name>inaccessible</role-name>
|
||||
</security-role>
|
||||
<role-name>admin-company</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<role-name>admin-system</role-name>
|
||||
</security-role>
|
||||
<security-role>
|
||||
<role-name>inaccessible</role-name>
|
||||
</security-role>
|
||||
|
||||
<security-constraint>
|
||||
<web-resource-collection>
|
||||
|
|
@ -34,37 +34,36 @@
|
|||
<auth-constraint/>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<display-name>User Required</display-name>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>User pages</web-resource-name>
|
||||
<url-pattern>/html/user/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>login</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<display-name>Admin User Required</display-name>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>Admin pages</web-resource-name>
|
||||
<url-pattern>/html/admin/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>admin</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
|
||||
<login-config>
|
||||
<auth-method>FORM</auth-method>
|
||||
<realm-name>VascDemoSecurity</realm-name>
|
||||
<security-constraint>
|
||||
<display-name>User Required</display-name>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>User pages</web-resource-name>
|
||||
<url-pattern>/html/user/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>login</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<security-constraint>
|
||||
<display-name>Admin User Required</display-name>
|
||||
<web-resource-collection>
|
||||
<web-resource-name>Admin pages</web-resource-name>
|
||||
<url-pattern>/html/admin/*</url-pattern>
|
||||
</web-resource-collection>
|
||||
<auth-constraint>
|
||||
<role-name>admin</role-name>
|
||||
</auth-constraint>
|
||||
</security-constraint>
|
||||
|
||||
<login-config>
|
||||
<auth-method>FORM</auth-method>
|
||||
<realm-name>VascDemoSecurity</realm-name>
|
||||
<form-login-config>
|
||||
<form-login-page>/html/auth/login.jsf</form-login-page>
|
||||
<form-error-page>/html/auth/error.jsf</form-error-page>
|
||||
</form-login-config>
|
||||
</login-config>
|
||||
</login-config>
|
||||
|
||||
<error-page>
|
||||
<error-code>400</error-code>
|
||||
|
|
@ -111,15 +110,18 @@
|
|||
</filter>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>userFilter</filter-name>
|
||||
<servlet-name>facesServlet</servlet-name>
|
||||
<dispatcher>REQUEST</dispatcher>
|
||||
</filter-mapping>
|
||||
<filter-name>userFilter</filter-name>
|
||||
<servlet-name>facesServlet</servlet-name>
|
||||
<dispatcher>REQUEST</dispatcher>
|
||||
</filter-mapping>
|
||||
-->
|
||||
|
||||
<!-- =============== CONFIG =================================== -->
|
||||
|
||||
<!-- JSF 2.0 -->
|
||||
<listener>
|
||||
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
|
||||
</listener>
|
||||
|
||||
<context-param>
|
||||
<param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
|
||||
|
|
@ -129,6 +131,10 @@
|
|||
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
|
||||
<param-value>server</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
|
||||
<param-value>true</param-value>
|
||||
</context-param>
|
||||
<servlet>
|
||||
<servlet-name>facesServlet</servlet-name>
|
||||
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
|
||||
|
|
@ -146,7 +152,7 @@
|
|||
<param-value>false</param-value>
|
||||
</context-param>
|
||||
|
||||
<!-- Jawr -->
|
||||
<!-- Jawr -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>JsServlet</servlet-name>
|
||||
|
|
@ -185,12 +191,11 @@
|
|||
<servlet-mapping>
|
||||
<servlet-name>CssServlet</servlet-name>
|
||||
<url-pattern>/_css/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- Vasc -->
|
||||
|
||||
<filter>
|
||||
<filter>
|
||||
<display-name>VASC Filter</display-name>
|
||||
<filter-name>vascFilter</filter-name>
|
||||
<filter-class>net.forwardfire.vasc.frontend.web.jsf.VascRequestFacesFilter</filter-class>
|
||||
|
|
@ -200,22 +205,42 @@
|
|||
</init-param>
|
||||
<init-param>
|
||||
<param-name>vascControllerProvider</param-name>
|
||||
<param-value>java:comp/env/vasc/DemoVascController@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
<param-value>java:comp/env/vasc/server-tech@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>vascFilter</filter-name>
|
||||
<url-pattern>/vasc/*</url-pattern>
|
||||
<dispatcher>REQUEST</dispatcher>
|
||||
<!-- <dispatcher>FORWARD</dispatcher> -->
|
||||
</filter-mapping>
|
||||
<filter-name>vascFilter</filter-name>
|
||||
<url-pattern>/vasc/*</url-pattern>
|
||||
<dispatcher>REQUEST</dispatcher>
|
||||
<!-- <dispatcher>FORWARD</dispatcher> -->
|
||||
</filter-mapping>
|
||||
|
||||
<filter>
|
||||
<display-name>VASC Filter</display-name>
|
||||
<filter-name>vascFilterServerAdmin</filter-name>
|
||||
<filter-class>net.forwardfire.vasc.frontend.web.jsf.VascRequestFacesFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>templateFile</param-name>
|
||||
<param-value>/WEB-INF/template/page-vasc.jsf</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>vascControllerProvider</param-name>
|
||||
<param-value>java:comp/env/vasc/server-admin@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>vascFilterServerAdmin</filter-name>
|
||||
<url-pattern>/server-admin/*</url-pattern>
|
||||
<dispatcher>REQUEST</dispatcher>
|
||||
<!-- <dispatcher>FORWARD</dispatcher> -->
|
||||
</filter-mapping>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>vascExportServlet</servlet-name>
|
||||
<servlet-class>net.forwardfire.vasc.frontend.web.export.VascExportServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>vascControllerProvider</param-name>
|
||||
<param-value>java:comp/env/vasc/DemoVascController@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
<param-value>java:comp/env/vasc/server-tech@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>4</load-on-startup>
|
||||
</servlet>
|
||||
|
|
@ -233,7 +258,7 @@
|
|||
<servlet-class>net.forwardfire.vasc.frontend.cxf.server.web.VascCXFServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>vascControllerProvider</param-name>
|
||||
<param-value>java:comp/env/vasc/DemoVascController@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
<param-value>java:comp/env/vasc/server-tech@net.forwardfire.vasc.impl.jndi.JndiVascControllerProvider</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>5</load-on-startup>
|
||||
</servlet>
|
||||
|
|
@ -242,17 +267,44 @@
|
|||
<url-pattern>/cxf/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- Debug
|
||||
<!-- Add header tags -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>testServlet</servlet-name>
|
||||
<servlet-class>net.forwardfire.vasc.demo.tech.web.servlets.TestServlet</servlet-class>
|
||||
<load-on-startup>6</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>testServlet</servlet-name>
|
||||
<url-pattern>/test</url-pattern>
|
||||
</servlet-mapping>
|
||||
-->
|
||||
<filter>
|
||||
<filter-name>ExpiresFilter</filter-name>
|
||||
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>ExpiresExcludedResponseStatusCodes</param-name>
|
||||
<param-value>302, 304, 500, 503</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>ExpiresByType image</param-name>
|
||||
<param-value>access plus 10 weeks</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>ExpiresByType text/css</param-name>
|
||||
<param-value>access plus 10 weeks</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>ExpiresByType application/javascript</param-name>
|
||||
<param-value>access plus 10 weeks</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>ExpiresFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
<dispatcher>REQUEST</dispatcher>
|
||||
</filter-mapping>
|
||||
|
||||
<!-- Remote ejb -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>EjbServerServlet</servlet-name>
|
||||
<servlet-class>org.apache.openejb.server.httpd.ServerServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>EjbServerServlet</servlet-name>
|
||||
<url-pattern>/ejb/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
</web-app>
|
||||
|
|
|
|||
|
|
@ -4,17 +4,26 @@ body {
|
|||
margin: 10px;
|
||||
}
|
||||
|
||||
#body-container {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#body-content {
|
||||
margin: 10px auto;
|
||||
margin-left: 200px;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
#body-clear {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
#page-header {
|
||||
height: 1.5em;
|
||||
}
|
||||
|
||||
#page-header-left {
|
||||
float:left;
|
||||
margin-left: 200px;
|
||||
}
|
||||
|
||||
#page-header-info {
|
||||
|
|
@ -30,11 +39,8 @@ body {
|
|||
padding-top: 10px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#body-footer {
|
||||
text-align: center;
|
||||
text-align: center;
|
||||
padding: 5px;
|
||||
margin-left:20em;
|
||||
margin-right:20em;
|
||||
|
|
@ -48,7 +54,7 @@ body {
|
|||
}
|
||||
|
||||
#body-deco-menu {
|
||||
position: absolute;
|
||||
right: 20px;
|
||||
top: 150px;
|
||||
float: left;
|
||||
width: 190px;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -31,4 +31,4 @@
|
|||
|
||||
.no-border {
|
||||
border:none;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@ body {
|
|||
}
|
||||
|
||||
#body-content {
|
||||
border: 1px solid #ccc;
|
||||
border: 1px solid #ccc;
|
||||
border-bottom-left-radius:3px;
|
||||
border-bottom-right-radius:3px;
|
||||
background-image: url(/demo/img/skin/default/body-view-bg.png);
|
||||
}
|
||||
|
||||
|
|
@ -49,7 +51,7 @@ h2 {
|
|||
|
||||
h3 {
|
||||
font-family: Georgia, serif;
|
||||
color: #2d1100;
|
||||
color: #2d1100;
|
||||
font-style: italic;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 5px;
|
||||
|
|
@ -62,7 +64,7 @@ h3 span {
|
|||
padding-top:2px;
|
||||
padding-left:5px;
|
||||
padding-right: 40px;
|
||||
padding-bottom: 4x;
|
||||
padding-bottom: 4px;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -86,7 +88,7 @@ h3 span {
|
|||
|
||||
}
|
||||
#body-deco-menu {
|
||||
padding:10px;
|
||||
|
||||
}
|
||||
|
||||
#body-deco-logo-div,#body-deco-menu0-div,#body-deco-menu1-div,#body-deco-menu2-div {
|
||||
|
|
@ -101,13 +103,14 @@ h3 span {
|
|||
}
|
||||
|
||||
|
||||
#body-deco-menu {
|
||||
#body-deco-menu-group {
|
||||
padding:5px;
|
||||
margin-bottom: 10px;
|
||||
border-radius:5px;
|
||||
border: 1px solid #BBBBBB;
|
||||
background-image: url(/demo/img/skin/default/body-view-bg.png);
|
||||
}
|
||||
|
||||
|
||||
|
||||
.rf-p {
|
||||
border-radius:5px;
|
||||
border: 1px solid #BBBBBB;
|
||||
|
|
@ -122,25 +125,19 @@ h3 span {
|
|||
}
|
||||
|
||||
.rf-p-b {
|
||||
|
||||
padding-top:10px;
|
||||
padding-left:5px;
|
||||
padding-bottom:10px;
|
||||
padding-right:5px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
input,textarea,select{
|
||||
padding: 3px;
|
||||
background: none repeat scroll 0 0 transparent;
|
||||
border: 2px solid rgba(66, 60, 24, 0.6);
|
||||
border-radius:3px;
|
||||
margin-right: 5px;
|
||||
margin-bottom: 2px;
|
||||
background: none repeat scroll 0 0 transparent;
|
||||
border: 2px solid rgba(66, 60, 24, 0.6);
|
||||
border-radius:3px;
|
||||
margin-right: 5px;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
input:hover,textarea:hover,select:hover{
|
||||
|
|
@ -159,7 +156,7 @@ input:hover,textarea:hover,select:hover{
|
|||
background-color:rgba(218, 247, 82, 0.6);
|
||||
}
|
||||
|
||||
.table_options_bottom, .table_options_top, .actionbox, ul.actionboxtab li a.active,.rf-p-hdr {
|
||||
.table_options_bottom, .table_options_top, .actionbox,.vascEditBox, ul.actionboxtab li a.active,.rf-p-hdr,.actiontabline {
|
||||
background-color:rgba(200, 224, 64, 0.6);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,17 @@
|
|||
|
||||
|
||||
.vascEditBox {
|
||||
background-color:#DDCCCC;
|
||||
border-radius:3px;
|
||||
border-top-left-radius:0;
|
||||
border:none;
|
||||
clear:both;
|
||||
padding-left:5px;
|
||||
padding-right:5px;
|
||||
padding-top:15px;
|
||||
padding-bottom:15px;
|
||||
}
|
||||
|
||||
.actionbox{
|
||||
background-color:#DDCCCC;
|
||||
border-radius:3px;
|
||||
|
|
@ -19,7 +31,8 @@ ul.actionboxtab li a {
|
|||
border-top-right-radius:3px;
|
||||
font-weight:700;
|
||||
display:block;
|
||||
margin-right:5px;color:#000;
|
||||
color:#000;
|
||||
margin-left:5px;
|
||||
padding:3px 15px;
|
||||
}
|
||||
ul.actionboxtab li a.active{background-color:#DDCCCC;text-decoration:none;}
|
||||
|
|
@ -27,6 +40,40 @@ ul.actionboxtab li a:hover{background-color:#DDCCCC;text-decoration:none;}
|
|||
td.tableactions{border-bottom-color:#bbb;text-align:left;}
|
||||
|
||||
|
||||
.itoiOption {
|
||||
text-align: right;
|
||||
padding: 1px;
|
||||
}
|
||||
.itoiOptionValue {
|
||||
text-align: left;
|
||||
padding: 1px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.vascButtons {
|
||||
padding: 5px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.actiontab {
|
||||
display:block;
|
||||
float:left;
|
||||
}
|
||||
|
||||
.actiontabline {
|
||||
display:block;
|
||||
float:left;
|
||||
background-color:#DDCCCC;
|
||||
width:100%;
|
||||
height:5px;
|
||||
border-top-left-radius:3px;
|
||||
}
|
||||
|
||||
.vascSelectAll {
|
||||
padding-left: 5px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
ul.paging{
|
||||
clear:both;
|
||||
margin-bottom:5px;
|
||||
|
|
@ -118,7 +165,7 @@ ul.paging .paging_break{
|
|||
border: none;
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
font-weight: none;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.rf-dt-thd {
|
||||
|
|
@ -131,9 +178,11 @@ ul.paging .paging_break{
|
|||
border-top-right-radius:3px;
|
||||
background-color:#DDCCCC;
|
||||
font-size:12px;
|
||||
font-weight:700;
|
||||
font-weight:bold;
|
||||
padding:6px 15px;
|
||||
display: block;
|
||||
text-align:left;
|
||||
margin-bottom:5px;
|
||||
}
|
||||
|
||||
.table_options_bottom {
|
||||
|
|
@ -141,10 +190,11 @@ ul.paging .paging_break{
|
|||
border-bottom-right-radius:3px;
|
||||
background-color:#DDCCCC;
|
||||
font-size:12px;
|
||||
font-weight:700;
|
||||
font-weight:bold;
|
||||
padding:6px 15px;
|
||||
margin-top:5px;
|
||||
display: block;
|
||||
text-align:left;
|
||||
margin-top:5px;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -164,5 +214,5 @@ ul.paging .paging_break{
|
|||
padding-top:2px;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -3,3 +3,29 @@ body {
|
|||
color: #00FF00;
|
||||
}
|
||||
|
||||
|
||||
|
||||
input:hover,textarea:hover,select:hover{
|
||||
border: 2px solid rgba(100, 224, 64, 0.6);
|
||||
}
|
||||
|
||||
.even {
|
||||
background-color:rgba(70, 180, 60, 0.6);
|
||||
}
|
||||
|
||||
.odd {
|
||||
background-color:rgba(10, 230, 120, 0.6);
|
||||
}
|
||||
|
||||
#page-header-left a,#page-header-right a,#page-header-info-body,.rf-dt-shdr-c a,.table_sub_header {
|
||||
background-color:rgba(18, 247, 82, 0.6);
|
||||
}
|
||||
|
||||
.table_options_bottom, .table_options_top, .actionbox, ul.actionboxtab li a.active,.rf-p-hdr,.actiontabline {
|
||||
background-color:rgba(00, 224, 64, 0.6);
|
||||
}
|
||||
|
||||
ul.actionboxtab li a:hover,#page-header-left a:hover,#page-header-right a:hover,#page-header-info-body:hover {
|
||||
background-color:rgba(65, 182, 33, 0.6);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,11 @@
|
|||
<h3><span><h:outputText value="Vasc Demo Admin" /></span></h3>
|
||||
<p>Here is is possible to edit all editable tables.</p>
|
||||
<p>
|
||||
<h:outputLink value="#{contextPathController.rootPath}/vasc/VascEntry/list.jsf"><h:outputText value="VascEnties"/></h:outputLink>
|
||||
<ul>
|
||||
<li><h:outputLink value="#{contextPathController.rootPath}/vasc/VascEntry/list.jsf"><h:outputText value="VascEnties"/></h:outputLink></li>
|
||||
<li><h:outputLink value="#{contextPathController.rootPath}/_css/default/jawr/default.css?refreshKey=jawr_refresh"><h:outputText value="Refresh JS/CSS"/></h:outputLink></li>
|
||||
<li><h:outputLink value="#{contextPathController.rootPath}/html/admin/debug-style.jsf"><h:outputText value="Debug Style"/></h:outputLink></li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
|
|
@ -19,8 +23,18 @@
|
|||
<p>Check all resources in jndi tree's.</p>
|
||||
<p>
|
||||
<ul>
|
||||
<li><h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view"><h:outputText value="Jndi Tree "/></h:outputLink></li>
|
||||
<li><h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/global"><h:outputText value="Jndi Tree Global"/></h:outputLink></li>
|
||||
<li>
|
||||
<h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/java"><h:outputText value="Jndi Tree Java"/></h:outputLink>
|
||||
-(<h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/java?type=text"><h:outputText value="text"/></h:outputLink>)
|
||||
</li>
|
||||
<li>
|
||||
<h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/global"><h:outputText value="Jndi Tree Global"/></h:outputLink>
|
||||
-(<h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/global?type=text"><h:outputText value="text"/></h:outputLink>)
|
||||
</li>
|
||||
<li>
|
||||
<h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/openejb"><h:outputText value="Jndi Tree OpenEjb"/></h:outputLink>
|
||||
-(<h:outputLink value="#{contextPathController.rootPath}/debug/jndi/view/openejb?type=text"><h:outputText value="text"/></h:outputLink>)
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
|
|
@ -28,7 +42,12 @@
|
|||
<h3><span><h:outputText value="Jdbc" /></span></h3>
|
||||
<p>Raw access to the embedded db.</p>
|
||||
<p>
|
||||
<h:outputLink value="#{contextPathController.rootPath}/debug/jdbc/console/"><h:outputText value="(H2) Jdbc Console"/></h:outputLink>
|
||||
<ul>
|
||||
<li>
|
||||
<h:outputLink value="#{contextPathController.rootPath}/debug/jdbc/console/"><h:outputText value="(H2) Jdbc Console"/></h:outputLink>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
<h:panelGrid columns="2">
|
||||
<h:column><h:outputText value="Username:" /></h:column>
|
||||
<h:column><input type="text" name="j_username" id="j_username"/></h:column>
|
||||
|
||||
|
||||
<h:column><h:outputText value="Password:" /></h:column>
|
||||
<h:column><input type="password" name="j_password" id="j_password"/></h:column>
|
||||
</h:panelGrid>
|
||||
|
|
@ -20,7 +20,7 @@
|
|||
<h:outputText value="Forgot my login." />
|
||||
</h:outputLink>
|
||||
<script>
|
||||
document.getElementById('j_security_check:j_username').focus();
|
||||
document.getElementById('j_username').focus();
|
||||
</script>
|
||||
</ui:define>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
|
|
|
|||
Binary file not shown.
|
After Width: | Height: | Size: 258 B |
Loading…
Add table
Add a link
Reference in a new issue