Project

General

Profile

« Previous | Next » 

Revision 46303

View differences:

modules/uoa-goldoa-service/branches/hibernate/src/main/resources/eu/dnetlib/goldoa/service/hibernate.cfg.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2

  
3
<!DOCTYPE hibernate-configuration PUBLIC
4
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
5
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
6

  
7

  
8
<hibernate-configuration>
9
    <session-factory>
10
        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQL9Dialect</property>
11
        <!--<property name="hibernate.hbm2ddl.auto">create</property>-->
12
		<property name="hibernate.hbm2ddl.auto">update</property>
13
        <property name="show_sql">true</property>	
14
       	<property name="connection.pool_size">1</property>
15
     	<property name="format_sql">true</property>
16
    	<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
17

  
18
       	<mapping class = "eu.dnetlib.goldoa.domain.User"/>
19
		<mapping class = "eu.dnetlib.goldoa.domain.Role"/>
20
		<mapping class = "eu.dnetlib.goldoa.domain.UserRole"/>
21
		<mapping class = "eu.dnetlib.goldoa.domain.UserRolePK"/>
22
		<mapping class = "eu.dnetlib.goldoa.domain.Organization"/>
23
		<mapping class = "eu.dnetlib.goldoa.domain.Affiliation"/>
24

  
25
		<mapping class = "eu.dnetlib.goldoa.domain.Country"/>
26
		<mapping class = "eu.dnetlib.goldoa.domain.File"/>
27
		<mapping class = "eu.dnetlib.goldoa.domain.Funder"/>
28
		<mapping class = "eu.dnetlib.goldoa.domain.Help"/>
29
		<mapping class = "eu.dnetlib.goldoa.domain.Invoice"/>
30
		<mapping class = "eu.dnetlib.goldoa.domain.Publisher"/>
31
		<mapping class = "eu.dnetlib.goldoa.domain.Journal"/>
32
		<mapping class = "eu.dnetlib.goldoa.domain.Language"/>
33
		<mapping class = "eu.dnetlib.goldoa.domain.JournalDiscount"/>
34
		<mapping class = "eu.dnetlib.goldoa.domain.JournalDiscountPK"/>
35
		<mapping class = "eu.dnetlib.goldoa.domain.Budget"/>
36
		<mapping class = "eu.dnetlib.goldoa.domain.Budgetfile"/>
37
		<mapping class = "eu.dnetlib.goldoa.domain.Comment"/>
38
		<mapping class = "eu.dnetlib.goldoa.domain.CommentTemplate"/>
39
		<mapping class = "eu.dnetlib.goldoa.domain.Project"/>
40
		<mapping class = "eu.dnetlib.goldoa.domain.PublisherDiscount"/>
41
		<mapping class = "eu.dnetlib.goldoa.domain.PublisherDiscountPK"/>
42
		<mapping class = "eu.dnetlib.goldoa.domain.AccountAction"/>
43
		<mapping class = "eu.dnetlib.goldoa.domain.Request"/>
44
		<mapping class = "eu.dnetlib.goldoa.domain.Publication"/>
45
		<mapping class = "eu.dnetlib.goldoa.domain.RequestCoFunder"/>
46
		<mapping class = "eu.dnetlib.goldoa.domain.RequestCoFunderPK"/>
47
		<mapping class = "eu.dnetlib.goldoa.domain.RequestComment"/>
48
		<mapping class = "eu.dnetlib.goldoa.domain.Identifier"/>
49
		<mapping class = "eu.dnetlib.goldoa.domain.Author"/>
50
		<mapping class = "eu.dnetlib.goldoa.domain.BankAccount"/>
51
		<mapping class = "eu.dnetlib.goldoa.domain.BankTransferReceipt"/>
52
		<mapping class = "eu.dnetlib.goldoa.domain.BudgetContract"/>
53
    </session-factory>
54
</hibernate-configuration>
modules/uoa-goldoa-service/branches/hibernate/src/test/java/unitest/UserActionsTest.java
60 60
           // e.printStackTrace();
61 61
        }
62 62

  
63
        List<Organization> orgs = om.getAffiliatedWithUser(user.getEmail());
63
        /*List<Organization> orgs = om.getAffiliatedWithUser(user.getEmail());
64 64
        for(Organization o : orgs)
65
            assertEquals(org,o);
65
            assertEquals(org.getId(),o.getId());*/
66 66

  
67 67
        Organization o = null;
68 68
        try {
69 69
             o = om.getById("1");
70 70
        } catch (OrganizationManagerException e) {
71
           // e.printStackTrace();
71
            e.printStackTrace();
72 72
        }
73
        assertEquals(o,org);
73
        assertEquals(o.getId(),org.getId());
74 74
    }
75 75

  
76 76
    @Test
modules/uoa-goldoa-service/branches/hibernate/src/test/java/unitest/ProfileTest.java
14 14

  
15 15
import javax.transaction.Transactional;
16 16
import java.nio.charset.Charset;
17
import java.util.List;
17 18

  
18 19
import static org.junit.Assert.*;
19 20

  
......
51 52
    public void register(){
52 53
        /*User user = new User();
53 54
        user.setEmail("pkanakakis@di.uoa.gr");
54
        user.setDepartment(DigestUtils.md5DigestAsHex( "1q2w3e4r".getBytes(Charset.forName("UTF-8"))));
55
        user.setPassword(DigestUtils.md5DigestAsHex( "1q2w3e4r".getBytes(Charset.forName("UTF-8"))));
55 56

  
56 57
        Organization org1 = new Organization();
57 58
        org1.setName("ATHENA RESEARCH AND INNOVATION CENTER IN INFORMATION "
......
66 67
        } catch (OrganizationManagerException e) {
67 68
             e.printStackTrace();
68 69
        }
69

  
70
        AffiliationPK afk1 = new AffiliationPK();
71
        afk1.setUser(user);
72
        afk1.setOrganization(org1);
73
        Affiliation af1 = new Affiliation();
74
        af1.setPk(afk1);
75

  
76
        AffiliationPK afk2 = new AffiliationPK();
77
        afk2.setUser(user);
78
        afk2.setOrganization(org2);
70
        Affiliation af1= new Affiliation();
71
        af1.setOrganization(org1);
79 72
        Affiliation af2 = new Affiliation();
80
        af2.setPk(afk2);
73
        af2.setOrganization(org2);
74
        user.getAffiliations().add(af1);
75
        user.getAffiliations().add(af2);
81 76

  
82
        user.addUserAffiliation(af1);
83
        user.addUserAffiliation(af2);
84 77

  
78
        UserRole personRole = new UserRole();
79
        UserRolePK urPk = new UserRolePK();
85 80

  
86
        Role role1 = new Role("moderator", "Moderator");
87
        UserRolePK urpk1 = new UserRolePK();
88
        urpk1.setUser(user);
89
        urpk1.setRole(role1);
81
        urPk.setUser(user);
82
        urPk.setRole(new Role("researcher"));
83
        personRole.setPk(urPk);
90 84

  
91
        UserRole userRole1 = new UserRole();
92
        userRole1.setPk(urpk1);
93
        userRole1.setApproved(false);
94

  
95
        Role role2 = new Role("researcher", "Researcher");
96
        UserRolePK urpk2 = new UserRolePK();
97
        urpk2.setUser(user);
98
        urpk2.setRole(role2);
99

  
100
        UserRole userRole2 = new UserRole();
101
        userRole2.setPk(urpk2);
102
        userRole2.setApproved(false);
103

  
104

  
105
        user.addUserRole(userRole1);
106
        user.addUserRole(userRole2);
107

  
108 85
        try {
109 86
            um.register(user);
110 87
        } catch (PersonManagerException e) {
111 88
            e.printStackTrace();
112 89
        }
113
        um.activateUser(user.getEmail());
114
        um.acceptUserRole(user.getEmail(), role1.getId());
115
        um.rejectRole(user.getEmail(), role2.getId());
116

  
90
        um.activateUser(user.getEmail());*/
117 91
        User u = null;
118 92
        try {
119

  
120 93
            u = um.getByEmail("pkanakakis@di.uoa.gr");
121 94
        } catch (PersonManagerException e) {
122 95
            e.printStackTrace();
123 96
        }
97
        System.out.println(u.getRoles().get(0).getPk().getRole().getId());
124 98

  
99
        //List<Role> roles = um.getRoles();
100
        //System.out.println(roles.get(0).getId());
101
        //um.getUsers();
102
        /*um.acceptUserRole(user.getEmail(), role1.getId());
103
        um.rejectRole(user.getEmail(), role2.getId());
104

  
125 105
        for(UserRole ur:u.getRoles())
126 106
            System.out.println(u.getEmail() + "/" + ur.getPk().getRole().getRole());
127 107

  
modules/uoa-goldoa-service/branches/hibernate/src/test/resources/hibernate-cfg.xml
8 8
<hibernate-configuration>
9 9
    <session-factory>
10 10
        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQL9Dialect</property>
11
        <property name="hibernate.hbm2ddl.auto">create</property>
12
        <property name="show_sql">true</property>	
11

  
12
        <property name="show_sql">true</property>
13 13
       	<property name="connection.pool_size">1</property>
14 14
     	<property name="format_sql">true</property>
15 15
    	<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
modules/uoa-goldoa-service/branches/hibernate/src/main/java/META-INF/persistence.xml
1 1
<?xml version="1.0" encoding="UTF-8"?>
2
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
2
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence"
3
			 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
			 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
3 5
	<persistence-unit name="uoa-goldoa-service">
4
		<!-- <class>eu.dnetlib.goldoa.domain.User</class>
5
		<class>eu.dnetlib.goldoa.domain.Role</class>
6
		<class>eu.dnetlib.goldoa.domain.UserRole</class>
7
		<class>eu.dnetlib.goldoa.domain.Organization</class>
8
		<class>eu.dnetlib.goldoa.domain.Affiliation</class>
9
		<class>eu.dnetlib.goldoa.domain.Country</class>
10
		<class>eu.dnetlib.goldoa.domain.File</class>
11
		<class>eu.dnetlib.goldoa.domain.Funder</class>
12
		<class>eu.dnetlib.goldoa.domain.Help</class>
13
		<class>eu.dnetlib.goldoa.domain.Invoice</class>
14
		<class>eu.dnetlib.goldoa.domain.Publisher</class>
15
		<class>eu.dnetlib.goldoa.domain.Journal</class>
16
		<class>eu.dnetlib.goldoa.domain.Language</class>
17
		<class>eu.dnetlib.goldoa.domain.JournalDiscount</class>
18
		<class>eu.dnetlib.goldoa.domain.Budget</class>
19
		<class>eu.dnetlib.goldoa.domain.Budgetfile</class>
20
		<class>eu.dnetlib.goldoa.domain.Comment</class>
21
		<class>eu.dnetlib.goldoa.domain.BudgetComment</class>
22
		<class>eu.dnetlib.goldoa.domain.CommentTemplate</class>
23
		<class>eu.dnetlib.goldoa.domain.OrganizationBudget</class>
24
		<class>eu.dnetlib.goldoa.domain.Project</class>
25
		<class>eu.dnetlib.goldoa.domain.ProjectCoordinator</class>
26
		<class>eu.dnetlib.goldoa.domain.ProjectOrganization</class>
27
		<class>eu.dnetlib.goldoa.domain.PublisherDiscount</class>
28
		<class>eu.dnetlib.goldoa.domain.AccountAction</class>
29
		<class>eu.dnetlib.goldoa.domain.Request</class>
30
		<class>eu.dnetlib.goldoa.domain.Publication</class>
31
		<class>eu.dnetlib.goldoa.domain.RequestCofunder</class>
32
		<class>eu.dnetlib.goldoa.domain.RequestComment</class>
33
		<class>eu.dnetlib.goldoa.domain.Identifier<class>eu.dnetlib.goldoa.domain.PublicationAffiliation</class>
34
		<class>eu.dnetlib.goldoa.domain.Publication_Author</class>
35
		<class>eu.dnetlib.goldoa.domain.Author</class> -->
36 6
		<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
37
		
38
		<!-- <properties>
39
			<property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
40
	        <property name="hibernate.connection.username" value="SA"/>
41
	        <property name="hibernate.connection.department" value=""/>
42
	        <property name="hibernate.connection.url"  value="jdbc:hsqldb:file:testDB"/>
43
		</properties> -->
44
		
45
		<!-- <properties>
46
			<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/goldoa-local" />
47
	      	<property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver" />
48
	      	<property name="javax.persistence.jdbc.user" value="postgres" />
49
	      	<property name="javax.persistence.jdbc.department" value="1q2w3e4r" />
50
	      	<property name="eclipselink.logging.level" value="ALL" />
51
		</properties> -->
52 7
	</persistence-unit>
53 8
</persistence>
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/HelpManagerImpl.java
5 5
import org.springframework.beans.factory.annotation.Autowired;
6 6
import org.springframework.dao.EmptyResultDataAccessException;
7 7
import org.springframework.stereotype.Service;
8
import org.springframework.transaction.annotation.Transactional;
8 9

  
9 10
import java.util.List;
10 11

  
11 12
/*
12 13
 * Created by antleb on 4/17/15.
13 14
*/
15
@Transactional
14 16
@Service("helpManager")
15 17
public class HelpManagerImpl implements HelpManager {
16 18

  
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/InvoiceManagerImpl.java
16 16
 */
17 17

  
18 18
@Transactional
19
@Service
19
@Service("invoiceManager")
20 20
public class InvoiceManagerImpl implements InvoiceManager {
21 21
	@Autowired
22 22
	private InvoiceDAO invoiceDAO;
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/dao/UserDAO.java
10 10
import org.hibernate.Hibernate;
11 11
import org.hibernate.criterion.Property;
12 12
import org.hibernate.criterion.Restrictions;
13
import org.hibernate.transform.AliasToBeanResultTransformer;
14
import org.hibernate.transform.Transformers;
13 15
import org.hibernate.type.StringType;
14 16
import org.springframework.stereotype.Repository;
15 17

  
......
110 112
    @SuppressWarnings("unchecked")
111 113
    public List<Role> getRoles() {
112 114
        Criteria cr = getSession().createCriteria(Role.class);
113
        return cr.list();
115
        return (List<Role>)cr.list();
114 116
    }
115 117

  
118
    @SuppressWarnings("unchecked")
116 119
    public void saveUser(final User user) {
117 120
        //TODO ! Roles already in db
118 121
        /*for (UserRole ur : user.getRoles()) {
119 122
            Role r = ur.getPk().getRole();
120 123
            getSession().persist(r);
121 124
        }*/
122
        persist(user);
125
        User u = getUserByEmail(user.getEmail());
126
        if (u != null) {
127
            if(!user.getPassword().equals(u.getPassword()))
128
                user.setPassword(DigestUtils.md5Hex(user.getPassword()));
129
            System.out.println("session -> " + getSession());
130

  
131
            //getSession().update(user);
132
        }else
133
            persist(user);
123 134
    }
124 135

  
125 136
    //TODO MOVE TO PROJECT DAO
......
170 181

  
171 182
    public Role getRole(final String roleId) {
172 183
        Criteria cr = getSession().createCriteria(Role.class);
173
        cr.add(Restrictions.eq("id", roleId));
174
        return (Role) cr.list().get(0);
184
        cr.add(Restrictions.eq("id", roleId))
185
                .setResultTransformer( new AliasToBeanResultTransformer(Role.class));
186
        return (Role)cr.list().get(0);
175 187
    }
176 188

  
177 189
    public void deactivateUser(String email) {
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/dao/AbstractDao.java
37 37
    public void delete(T entity) {
38 38
        getSession().delete(entity);
39 39
    }
40
     
40

  
41 41
    protected Criteria createEntityCriteria(){
42 42
        return getSession().createCriteria(persistentClass);
43 43
    }
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/dao/OrganizationDAO.java
48 48
	public List<Vocabulary> search(String term) {
49 49

  
50 50
		List<Organization> orgs = createEntityCriteria().add(Restrictions.
51
				eq("name",term.toLowerCase()).ignoreCase()).list();
51
				like("name","%" + term.toLowerCase() + "%").ignoreCase()).list();
52 52

  
53 53
	    List<Vocabulary> voc = new ArrayList<>();
54 54
	    for(Organization org : orgs)
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/UserManagerImpl.java
12 12

  
13 13
import javax.mail.MessagingException;
14 14
import java.math.BigInteger;
15
import java.nio.charset.Charset;
15 16
import java.security.SecureRandom;
16 17
import java.util.ArrayList;
17 18
import java.util.List;
......
118 119
			throw e;
119 120
		}
120 121

  
122
		user.setPassword(org.springframework.util.DigestUtils.md5DigestAsHex( user.getPassword().getBytes(Charset.forName("UTF-8"))));
121 123
		this.saveUser(user);
122 124
		userDAO.saveToken(user.getEmail(), token, tokenTTL);
123 125

  
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/BudgetManagerImpl.java
33 33

  
34 34
	@Override
35 35
	public Budget saveBudget(final Budget budget) {
36
		
36

  
37 37
		if(budget.getId() == null){
38 38
			//getRequestId
39 39
			budget.setId("B-" + new SimpleDateFormat("yyyyMMdd-").format(new Date()) + budgetDAO.getRequestId());
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/Journal.java
22 22
	@Column(columnDefinition = "text")
23 23
	private String alttitle;
24 24
	@Column(columnDefinition = "float NOT NULL")
25
	private float apc;
25
	private double apc;
26 26
	@Column(columnDefinition = "float NOT NULL")
27
	private float discount;
27
	private double discount;
28 28
	@Column(columnDefinition = "text")
29 29
	private String issn;
30 30
	
......
71 71
		this.alttitle = alttitle;
72 72
	}
73 73

  
74
	public float getApc() {
74
	public double getApc() {
75 75
		return this.apc;
76 76
	}
77 77

  
78
	public void setApc(float apc) {
78
	public void setApc(double apc) {
79 79
		this.apc = apc;
80 80
	}
81 81

  
......
95 95
		this.country = country;
96 96
	}
97 97

  
98
	public float getDiscount() {
98
	public double getDiscount() {
99 99
		return this.discount;
100 100
	}
101 101

  
102
	public void setDiscount(float discount) {
102
	public void setDiscount(double discount) {
103 103
		this.discount = discount;
104 104
	}
105 105

  
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/RequestComment.java
55 55
		this.request = request;
56 56
	}
57 57

  
58
	
58
	@Override
59
	public boolean equals(Object o) {
60
		if (this == o) return true;
61
		if (o == null || getClass() != o.getClass()) return false;
59 62

  
63
		RequestComment that = (RequestComment) o;
60 64

  
65
		if (comment != null ? !comment.equals(that.comment) : that.comment != null) return false;
66
		if (user != null ? !user.equals(that.user) : that.user != null) return false;
67
		return request != null ? request.equals(that.request) : that.request == null;
68
	}
69

  
70
	@Override
71
	public int hashCode() {
72
		int result = comment != null ? comment.hashCode() : 0;
73
		result = 31 * result + (user != null ? user.hashCode() : 0);
74
		result = 31 * result + (request != null ? request.hashCode() : 0);
75
		return result;
76
	}
61 77
}
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/User.java
1 1
package eu.dnetlib.goldoa.domain;
2 2

  
3
import com.fasterxml.jackson.annotation.JsonBackReference;
4
import com.fasterxml.jackson.annotation.JsonManagedReference;
5

  
3 6
import java.io.Serializable;
4 7
import java.util.ArrayList;
5 8
import java.util.List;
......
41 44
			},
42 45
			inverseJoinColumns = { @JoinColumn(name = "affiliation",
43 46
					nullable = false, updatable = false) })
47
	//@JsonManagedReference
44 48
	private List<Affiliation> affiliations = new ArrayList<>();
45 49

  
46 50
	@OneToOne(mappedBy="contact")
47 51
	private Publisher publisher;
48 52

  
49 53
	@OneToMany(mappedBy = "pk.user", cascade=CascadeType.ALL)
54
	//@JsonBackReference
50 55
	private List<UserRole> roles = new ArrayList<>();
51 56

  
52 57
	@ManyToMany(fetch = FetchType.LAZY, mappedBy = "coordinators")
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/Affiliation.java
1 1
package eu.dnetlib.goldoa.domain;
2 2

  
3
import com.fasterxml.jackson.annotation.JsonBackReference;
4

  
3 5
import java.io.Serializable;
4 6
import javax.persistence.*;
5 7
import java.sql.Timestamp;
......
14 16
	private static final long serialVersionUID = 1L;
15 17

  
16 18
	@Id
19
	@GeneratedValue(strategy=GenerationType.AUTO)
17 20
	private Integer id;
18 21

  
19 22
	@OneToOne
......
25 28
	private Timestamp startdate;
26 29

  
27 30
	@ManyToMany(fetch = FetchType.LAZY, mappedBy = "affiliations")
31
	@JsonBackReference
28 32
	private List<User> users = new ArrayList<>();
29 33

  
30 34
	public Integer getId() {
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/UserRolePK.java
1 1
package eu.dnetlib.goldoa.domain;
2 2

  
3
import com.fasterxml.jackson.annotation.JsonBackReference;
4

  
3 5
import java.io.Serializable;
4 6

  
5 7
import javax.persistence.Column;
......
11 13

  
12 14
	private static final long serialVersionUID = 1L;
13 15
	@ManyToOne
16
	@JsonBackReference
14 17
	private User user;
15 18
	@ManyToOne
16 19
	private Role role;
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/Publisher.java
13 13

  
14 14
	private float apc;
15 15
	@Column(columnDefinition = "float default 0")
16
	private float discount;
16
	private double discount;
17 17
	@Column(columnDefinition = "text")
18 18
	private String email;
19 19
	@Id
......
65 65
		this.contact = contact;
66 66
	}
67 67

  
68
	public float getDiscount() {
68
	public double getDiscount() {
69 69
		return this.discount;
70 70
	}
71 71

  
72
	public void setDiscount(float discount) {
72
	public void setDiscount(double discount) {
73 73
		this.discount = discount;
74 74
	}
75 75

  
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/UserRole.java
1 1
package eu.dnetlib.goldoa.domain;
2 2

  
3
import com.fasterxml.jackson.annotation.JsonBackReference;
4

  
3 5
import java.io.Serializable;
4 6

  
5 7
import javax.persistence.*;
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/domain/Role.java
1 1
package eu.dnetlib.goldoa.domain;
2
import com.fasterxml.jackson.annotation.JsonBackReference;
3
import com.fasterxml.jackson.annotation.JsonManagedReference;
4
import com.fasterxml.jackson.annotation.JsonProperty;
5
import com.fasterxml.jackson.annotation.JsonValue;
6

  
2 7
import java.io.Serializable;
3 8
import java.util.ArrayList;
4 9
import java.util.List;
......
16 21
	private String role;
17 22
	
18 23

  
19
	@OneToMany(fetch = FetchType.LAZY, mappedBy = "pk.role")
24
	@OneToMany(fetch = FetchType.EAGER, mappedBy = "pk.role")
25
	@JsonBackReference
20 26
	private List<UserRole> userRoles = new ArrayList<>();
21
	
27

  
28
	public Role(){}
29

  
22 30
	public Role(String id, String role){
23 31
		this.setId(id);
24 32
		this.setRole(role);
modules/uoa-goldoa-service/branches/hibernate/src/main/resources/eu/dnetlib/goldoa/service/dataSource.xml
5 5
xsi:schemaLocation="http://www.springframework.org/schema/beans
6 6
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
7 7

  
8
	<!--<bean id="goldoa.dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
9
   		<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
10
      	<property name="url" value="jdbc:hsqldb:mem:testDB"/>
11
      	<property name="username" value="SA" />
12
      	<property name="department" value="" />
13
   	</bean>
14
-->
15
	<!--<bean id="goldoa.dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
16
		<property name="driverClassName" value="${goldoa.db.driverClassName}" />
17
		<property name="url" value="${goldoa.db.url}" />
18
		<property name="username" value="${goldoa.db.username}" />
19
		<property name="password" value="${goldoa.db.password}" />
20
   	</bean>-->
21 8
	<bean id="goldoa.dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
22 9
		<property name="driverClassName" value="${goldoa.db.driverClassName}" />
23 10
		<property name="url" value="${goldoa.db.url}" />
modules/uoa-goldoa-service/branches/hibernate/src/main/resources/hibernate.cfg.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2

  
3
<!DOCTYPE hibernate-configuration PUBLIC
4
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
5
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
6

  
7

  
8
<hibernate-configuration>
9
    <session-factory>
10
        <!--<property name="hibernate.hbm2ddl.auto">create</property>-->
11
		<property name="hibernate.dialect">org.hibernate.dialect.PostgreSQL9Dialect</property>
12
        <property name="show_sql">true</property>	
13
       	<property name="connection.pool_size">1</property>
14
     	<property name="format_sql">true</property>
15
    	<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
16
		<!--<property name=" hibernate.globally_quoted_identifiers ">false</property>-->
17

  
18
       	<mapping class = "eu.dnetlib.goldoa.domain.User"/>
19
		<mapping class = "eu.dnetlib.goldoa.domain.Role"/>
20
		<mapping class = "eu.dnetlib.goldoa.domain.UserRole"/>
21
		<mapping class = "eu.dnetlib.goldoa.domain.UserRolePK"/>
22
		<mapping class = "eu.dnetlib.goldoa.domain.Organization"/>
23
		<mapping class = "eu.dnetlib.goldoa.domain.Affiliation"/>
24
		<mapping class = "eu.dnetlib.goldoa.domain.Country"/>
25
		<mapping class = "eu.dnetlib.goldoa.domain.File"/>
26
		<mapping class = "eu.dnetlib.goldoa.domain.Funder"/>
27
		<mapping class = "eu.dnetlib.goldoa.domain.Help"/>
28
		<mapping class = "eu.dnetlib.goldoa.domain.Invoice"/>
29
		<mapping class = "eu.dnetlib.goldoa.domain.Publisher"/>
30
		<mapping class = "eu.dnetlib.goldoa.domain.Journal"/>
31
		<mapping class = "eu.dnetlib.goldoa.domain.Language"/>
32
		<mapping class = "eu.dnetlib.goldoa.domain.JournalDiscount"/>
33
		<mapping class = "eu.dnetlib.goldoa.domain.JournalDiscountPK"/>
34
		<mapping class = "eu.dnetlib.goldoa.domain.Budget"/>
35
		<mapping class = "eu.dnetlib.goldoa.domain.Budgetfile"/>
36
		<mapping class = "eu.dnetlib.goldoa.domain.Comment"/>
37
		<mapping class = "eu.dnetlib.goldoa.domain.CommentTemplate"/>
38
		<mapping class = "eu.dnetlib.goldoa.domain.Project"/>
39
		<mapping class = "eu.dnetlib.goldoa.domain.PublisherDiscount"/>
40
		<mapping class = "eu.dnetlib.goldoa.domain.PublisherDiscountPK"/>
41
		<mapping class = "eu.dnetlib.goldoa.domain.AccountAction"/>
42
		<mapping class = "eu.dnetlib.goldoa.domain.Request"/>
43
		<mapping class = "eu.dnetlib.goldoa.domain.Publication"/>
44
		<mapping class = "eu.dnetlib.goldoa.domain.RequestCoFunder"/>
45
		<mapping class = "eu.dnetlib.goldoa.domain.RequestCoFunderPK"/>
46
		<mapping class = "eu.dnetlib.goldoa.domain.RequestComment"/>
47
		<mapping class = "eu.dnetlib.goldoa.domain.Identifier"/>
48
		<mapping class = "eu.dnetlib.goldoa.domain.Author"/>
49
		<mapping class = "eu.dnetlib.goldoa.domain.BankAccount"/>
50
		<mapping class = "eu.dnetlib.goldoa.domain.BankTransferReceipt"/>
51
		<mapping class = "eu.dnetlib.goldoa.domain.BudgetContract"/>
52
    </session-factory>
53
</hibernate-configuration>

Also available in: Unified diff