Salome HOME
Merge with master
authormordicus <mordicus@HP-8560w>
Mon, 3 Aug 2015 13:06:45 +0000 (15:06 +0200)
committermordicus <mordicus@HP-8560w>
Mon, 3 Aug 2015 13:06:45 +0000 (15:06 +0200)
17 files changed:
projects/GDE_App/GDE-ejb/nbproject/genfiles.properties
projects/GDE_App/GDE-ejb/nbproject/project.properties
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/common/PermissionManager.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/common/UserLoginManager.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/ApplicationEJB.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/AuthenticationEJB.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/ChunkDAO.java
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/FileDAO.java
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/MetadataDAO.java
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/UserDAO.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/entities/User.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/entities/UserPermission.java [new file with mode: 0644]
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/transferables/AttributeGroupTO.java
projects/GDE_App/GDE-ejb/src/java/com/edf/gde/transferables/UserTO.java [new file with mode: 0644]
projects/GDE_App/GDE-war/nbproject/project.properties
projects/GDE_App/nbproject/project.properties
projects/GDE_App/src/GDE_DB_Init.sql

index 68a32f36e16c75c393010466048f8003b4c58558..d97902bde4b0448c0ce783c7083f7d115a64962f 100644 (file)
@@ -1,8 +1,8 @@
-build.xml.data.CRC32=55685096
+build.xml.data.CRC32=dd11cbd0
 build.xml.script.CRC32=e2a8c789
 build.xml.stylesheet.CRC32=5910fda3@1.51.1
 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
 # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=55685096
+nbproject/build-impl.xml.data.CRC32=dd11cbd0
 nbproject/build-impl.xml.script.CRC32=fd1a82f0
 nbproject/build-impl.xml.stylesheet.CRC32=6096d939@1.51.1
index 9a987929a9b3677ef6fc077153b0a75e042e628f..8a9dc37d9ad51e5360c998b3c2ecfc7348cb04a7 100644 (file)
@@ -26,7 +26,7 @@ includes=**
 j2ee.compile.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/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar
+j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/bean-validator.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.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.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/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/common/PermissionManager.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/common/PermissionManager.java
new file mode 100644 (file)
index 0000000..94011c8
--- /dev/null
@@ -0,0 +1,43 @@
+package com.edf.gde.common;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ *
+ * @author Kavoos
+ */
+public class PermissionManager {
+    /**
+     * MAP<K,V>
+     * K = Service name
+     * V = Set of user Id
+     */
+    Map<String, Set<Long>> userPermissions;
+
+    public PermissionManager() {
+        userPermissions = new HashMap<>();
+    }
+    
+    public synchronized void addUser(String serviceName, long userId) {
+        Set<Long> users = userPermissions.get(serviceName);
+        if (users == null) {
+            users = new HashSet<>();
+            users.add(userId);
+            userPermissions.put(serviceName, users);
+        } else {
+            users.add(userId);
+        }
+    }
+    
+    public synchronized boolean isValid(String serviceName, long userId) {
+        Set<Long> users = userPermissions.get(serviceName);
+        if (users == null) {
+            return false;
+        }
+        return users.contains(userId);
+    }
+    
+}
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/common/UserLoginManager.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/common/UserLoginManager.java
new file mode 100644 (file)
index 0000000..ba25804
--- /dev/null
@@ -0,0 +1,33 @@
+package com.edf.gde.common;
+
+import com.edf.gde.entities.User;
+import javax.persistence.EntityManager;
+import javax.persistence.NonUniqueResultException;
+import javax.persistence.Query;
+
+/**
+ *
+ * @author Kavoos
+ */
+public class UserLoginManager {
+
+    private EntityManager em;
+
+    public UserLoginManager(EntityManager em) {
+        this.em = em;
+    }
+
+    public boolean checkLogin(String login, String password) {
+        Query q = em.createNamedQuery("User.findByName", User.class);
+        User user = null;
+        try {
+            user = (User) q.getSingleResult();
+        } catch (NonUniqueResultException ex) {
+            return false;
+        }
+        if (user.getPassword().equals(password)) {
+            return true;
+        }
+        return false;
+    }
+}
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/ApplicationEJB.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/ApplicationEJB.java
new file mode 100644 (file)
index 0000000..f93752e
--- /dev/null
@@ -0,0 +1,80 @@
+package com.edf.gde.ejb;
+
+import com.edf.gde.common.PermissionManager;
+import java.util.HashMap;
+import java.util.Map;
+import javax.annotation.PostConstruct;
+import javax.ejb.Singleton;
+import javax.ejb.LocalBean;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+
+/**
+ * @author Kavoos
+ */
+@Singleton
+@LocalBean
+public class ApplicationEJB {
+    /*
+     Locked files map.
+     key = file id
+     value = user id
+     */
+    @PersistenceContext(unitName = "GDE-ejbPU")
+    private EntityManager em;
+
+    private Map<Long, Long> userFiles;
+    private PermissionManager permissionManager;
+
+    /**
+     *
+     */
+    @PostConstruct
+    private void init() {
+        userFiles = new HashMap<>();
+        permissionManager = new PermissionManager();
+    }
+
+    /**
+     * Try to lock a file
+     *
+     * @param userId
+     * @param fileId
+     * @return true if file is locked, false if file is already locked by
+     * someone else
+     */
+    public boolean lockFile(long userId, long fileId) {
+        if (userFiles.containsKey(fileId)) {
+            if (userFiles.get(fileId) == userId) {
+                return true;
+            }
+            return false;
+        }
+        userFiles.put(fileId, userId);
+        return true;
+    }
+
+    /**
+     * Try to unlock a file
+     * @param userId
+     * @param fileId
+     * @return
+     */
+    public boolean unlockFile(long userId, long fileId) {
+        if (userFiles.containsKey(fileId)) {
+            if (userFiles.get(fileId) == userId) {
+                userFiles.remove(fileId);
+                return true;
+            }
+        }
+        return false;
+    }
+
+    public PermissionManager getPermissionManager() {
+        return permissionManager;
+    }    
+    
+    private void loadPermissions() {
+        
+    }
+}
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/AuthenticationEJB.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/AuthenticationEJB.java
new file mode 100644 (file)
index 0000000..2826d4d
--- /dev/null
@@ -0,0 +1,23 @@
+package com.edf.gde.ejb;
+
+import com.edf.gde.common.UserLoginManager;
+import javax.ejb.Stateless;
+import javax.ejb.LocalBean;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+
+/**
+ *
+ * @author mordicus
+ */
+@Stateless
+@LocalBean
+public class AuthenticationEJB {
+    @PersistenceContext(unitName = "GDE-ejbPU")
+    private EntityManager em;
+
+    public boolean authenticate(String login, String password) {
+        UserLoginManager manager = new UserLoginManager(em);
+        return manager.checkLogin(login, password);
+    }
+}
index f45016101a91aecaaaf1699338247333a8753f34..d55c6bb88fd89dd658f6db098a8c00f8c7d38c50 100644 (file)
@@ -1,8 +1,3 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package com.edf.gde.ejb;
 
 import com.edf.gde.entities.Chunk;
index 2e99380b19c3e85495a1d59556ad942e1ab18c61..e8c30b1b7fa493ceff047af60d7b248fcb04fd66 100644 (file)
@@ -1,8 +1,3 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package com.edf.gde.ejb;
 
 import com.edf.gde.entities.GDEFile;
index 8ebc7a83ba7d315bbe969d8c2cded52cf7e71cb4..f053bbc63efc6e3f527aa68fe1f6fe52bbff1dcf 100644 (file)
@@ -1,8 +1,3 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package com.edf.gde.ejb;
 
 import com.edf.gde.entities.Attribute;
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/UserDAO.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/ejb/UserDAO.java
new file mode 100644 (file)
index 0000000..c12bad1
--- /dev/null
@@ -0,0 +1,64 @@
+package com.edf.gde.ejb;
+
+import com.edf.gde.entities.User;
+import javax.ejb.Stateless;
+import javax.ejb.LocalBean;
+import javax.persistence.EntityManager;
+import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
+import javax.persistence.Query;
+
+/**
+ *
+ * @author Kavoos
+ */
+@Stateless
+@LocalBean
+public class UserDAO {
+
+    @PersistenceContext(unitName = "GDE-ejbPU")
+    private EntityManager em;
+
+    /**
+     * Create a new user
+     *
+     * @param userName
+     * @param password
+     * @return the new User or null if user exists or on error
+     */
+    public User createUser(String userName, String password) {
+        if (findUser(userName) != null) {
+            return null;
+        }
+        User user = new User();
+        user.setName(userName);
+        user.setPassword(password);
+        em.persist(user);
+        return user;
+    }
+
+    /**
+     * Find user by user name (login)
+     * @param userName
+     * @return
+     */
+    public User findUser(String userName) {
+        Query q = em.createNamedQuery("User.findByName");
+        User user = null;
+        try {
+            user = (User) q.getSingleResult();
+        } catch (NoResultException e) {
+            return null;
+        }
+        return user;
+    }
+    
+    public User findUser(long id) {
+        return em.find(User.class, id);
+    }
+    
+    public void deleteUser(long userId) {
+        User user = findUser(userId);
+        em.remove(user);
+    }
+}
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/entities/User.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/entities/User.java
new file mode 100644 (file)
index 0000000..c3b8832
--- /dev/null
@@ -0,0 +1,83 @@
+package com.edf.gde.entities;
+
+import com.edf.gde.transferables.UserTO;
+import java.io.Serializable;
+import javax.persistence.Basic;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
+import javax.persistence.SequenceGenerator;
+import javax.persistence.Table;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+
+/**
+ *
+ * @author Kavoos
+ */
+
+@Entity(name="User")
+@Table(name = "USERS")
+@NamedQueries ({
+    @NamedQuery(name = "User.findById", query = "SELECT u FROM User u"),
+    @NamedQuery(name = "User.findByName", query = "SELECT u FROM User u where u.name=:username")
+})
+public class User implements Serializable {
+    @Id
+    @Basic(optional = false)
+    @NotNull
+    @Column(name = "id")
+    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_GEN_SEQUENCE")
+    @SequenceGenerator(name = "SEQ_GEN_SEQUENCE", allocationSize = 50)
+    private Long id;
+    @Size(max = 255)
+    @Column(name = "userName")
+    private String name;
+    @Size(max = 255)
+    @Column(name = "userPassword")
+    private String password;
+    
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+    
+    public static User fromUserTO(UserTO uto) {
+        User user = new User();
+        user.setId(uto.getId());
+        user.setName(uto.getName());
+        user.setPassword(uto.getPassword());
+        return user;
+    }
+    
+    public UserTO toUserTO() {
+        UserTO uto = new UserTO();
+        uto.setId(id);
+        uto.setName(name);
+        uto.setPassword(password);
+        return uto;
+    }
+}
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/entities/UserPermission.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/entities/UserPermission.java
new file mode 100644 (file)
index 0000000..a8521a1
--- /dev/null
@@ -0,0 +1,80 @@
+package com.edf.gde.entities;
+
+import java.io.Serializable;
+import javax.persistence.Basic;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
+import javax.persistence.SequenceGenerator;
+import javax.persistence.Table;
+import javax.validation.constraints.NotNull;
+
+/**
+ *
+ * @author Kavoos
+ */
+@Entity(name = "UserPermission")
+@Table(name = "USERPERMISSIONS")
+@NamedQueries({
+    @NamedQuery(name = "UserPermission.findAll", query = "SELECT u FROM User u"),
+    @NamedQuery(name = "UserPermission.findById", query = "SELECT u FROM User u where u.id=:id"),
+    @NamedQuery(name = "UserPermission.findByName", query = "SELECT u FROM User u where u.name=:username")
+})
+
+public class UserPermission implements Serializable {
+
+    @Id
+    @Basic(optional = false)
+    @NotNull
+    @Column(name = "id")
+    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_GEN_SEQUENCE")
+    @SequenceGenerator(name = "SEQ_GEN_SEQUENCE", allocationSize = 50)
+    private Long id;
+    @Column(name="groupId")
+    long groupId;
+    @Column(name="serviceName")
+    String serviceName;
+    @Column(name="methodName")
+    String methodName;
+
+    public UserPermission() {
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public long getGroupId() {
+        return groupId;
+    }
+
+    public void setGroupId(long groupId) {
+        this.groupId = groupId;
+    }
+
+    public String getServiceName() {
+        return serviceName;
+    }
+
+    public void setServiceName(String serviceName) {
+        this.serviceName = serviceName;
+    }
+
+    public String getMethodName() {
+        return methodName;
+    }
+
+    public void setMethodName(String methodName) {
+        this.methodName = methodName;
+    }
+   
+
+}
index 631bf62d1ebe2a30b9cfece8eb50d3492555854e..bd78f8a60904260057d0593bbbaa0b2ab87986e7 100644 (file)
@@ -1,8 +1,3 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package com.edf.gde.transferables;
 
 import java.io.Serializable;
diff --git a/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/transferables/UserTO.java b/projects/GDE_App/GDE-ejb/src/java/com/edf/gde/transferables/UserTO.java
new file mode 100644 (file)
index 0000000..0370855
--- /dev/null
@@ -0,0 +1,40 @@
+package com.edf.gde.transferables;
+
+/**
+ *
+ * @author Kavoos
+ */
+public class UserTO {
+    private Long id;
+    private String name;
+    private String password;
+
+    public UserTO() {
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+
+    
+}
index 22acfc8d2d509197b0b5c9b23b933e60a2e52027..df97064c0ce462a8aafb1fcbf3fe9d1c537a7ea1 100644 (file)
@@ -33,7 +33,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/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar
+j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/bean-validator.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.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.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
index 864c306589311e2fb08d867dcd409bb782932479..f6d85c6797a69d18d21cdd0d7e7862ab0cb22ac9 100644 (file)
@@ -13,7 +13,7 @@ j2ee.appclient.mainclass.args=${j2ee.appclient.tool.args}
 j2ee.compile.on.save=true
 j2ee.deploy.on.save=false
 j2ee.platform=1.7
-j2ee.platform.classpath=${j2ee.server.middleware}/mq/lib/jaxm-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.json.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.xml.rpc-api.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.security.jacc-api.jar
+j2ee.platform.classpath=${j2ee.server.home}/modules/endorsed/jaxb-api.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/endorsed/javax.annotation-api.jar:${j2ee.server.home}/modules/bean-validator.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.enterprise.concurrent.jar:${j2ee.server.home}/modules/javax.ejb-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/javax.enterprise.concurrent-api.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/javax.transaction-api.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.management.j2ee-api.jar:${j2ee.server.home}/modules/javax.ws.rs-api.jar:${j2ee.server.home}/modules/javax.interceptor-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.security.auth.message-api.jar:${j2ee.server.home}/modules/javax.jms-api.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.batch-api.jar:${j2ee.server.home}/modules/javax.enterprise.deploy-api.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.home}/modules/javax.resource-api.jar:${j2ee.server.home}/modules/javax.inject.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/javax.el.jar:${j2ee.server.home}/modules/javax.websocket-api.jar:${j2ee.server.home}/modules/javax.xml.registry-api.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.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
index 61efacf96a44add795e8e622a9125c07662076cb..1ac70161ec465cf61ae20dbd84b5fc9d64977419 100644 (file)
@@ -2,7 +2,36 @@
 
 drop sequence SEQ_GEN_SEQUENCE;
 create sequence SEQ_GEN_SEQUENCE INCREMENT BY 50;
-    
+
+
+DROP TABLE IF EXISTS GROUP_;
+CREATE TABLE GROUP_ (
+    id bigint NOT NULL PRIMARY KEY,
+    groupName varchar(255) NOT NULL
+);
+
+DROP TABLE IF EXISTS USERS;
+CREATE TABLE USERS (
+    id bigint NOT NULL PRIMARY KEY,
+    userName varchar(255) not null,
+    userpassword varchar(255) not null
+);
+CREATE INDEX users_username_index ON USERS(userName);
+
+DROP TABLE IF EXISTS USERGROUP;
+CREATE TABLE USERGROUP (
+    id bigint NOT NULL PRIMARY KEY,
+    groupId bigint references GROUP_(id),
+    userId bigint references USERS(id)
+);
+
+DROP TABLE IF EXISTS USERPERMISSIONS;
+CREATE TABLE USERPERMISSIONS (
+    id bigint NOT NULL PRIMARY KEY,
+    groupId bigint references GROUP_(id),
+    serviceName varchar(255) not null,
+    methodName varchar(255) not null
+);
 
 /* METADATA */
 
@@ -21,7 +50,6 @@ CREATE TABLE attribute (
     mandatory boolean
 );
 
-
 /* DATA */
 
 DROP TABLE IF EXISTS gde_file CASCADE;