]> git.mxchange.org Git - jjobs-ejb.git/commitdiff
Please cherry-pick:
authorRoland Häder <roland@mxchange.org>
Thu, 25 Aug 2016 12:23:11 +0000 (14:23 +0200)
committerRoland Haeder <roland@mxchange.org>
Sun, 28 Aug 2016 13:58:49 +0000 (15:58 +0200)
- first the user instance must become managed, then persist log entry ...
- better check for Long, and not != null test (very lazy)

Signed-off-by: Roland Häder <roland@mxchange.org>
src/java/org/mxchange/jusercore/model/user/JobsAdminUserSessionBean.java
src/java/org/mxchange/jusercore/model/user/activity/JobsUserActivityLogMessageBean.java

index ee00ea10445692e4a717f44e6041bdf821cd3a69..d55610f7cbf621858574db7c1ddd7977318ee925 100644 (file)
@@ -75,7 +75,7 @@ public class JobsAdminUserSessionBean extends BaseJobsDatabaseBean implements Ad
                if (null == user) {
                        // Abort here
                        throw new NullPointerException("user is null"); //NOI18N
-               } else if (user.getUserId() != null) {
+               } else if (user.getUserId() instanceof Long) {
                        // Not allowed here
                        throw new IllegalStateException(MessageFormat.format("user.userId must be null, is: {0}", user.getUserId())); //NOI18N
                }
index 555871764a4e6a72bc7f6f0a079752301c648cc8..374a6fbb9b70ea09c71f5614aea8a725941e2761 100644 (file)
@@ -25,6 +25,7 @@ import javax.jms.Message;
 import javax.jms.MessageListener;
 import javax.jms.ObjectMessage;
 import org.mxchange.jjobs.database.BaseJobsDatabaseBean;
+import org.mxchange.jusercore.model.user.User;
 
 /**
  * A message-driven bean for adding user activity log
@@ -112,20 +113,32 @@ public class JobsUserActivityLogMessageBean extends BaseJobsDatabaseBean impleme
                } else if (userActivity.getActivityUser() == null) {
                        // Throw NPE again
                        throw new NullPointerException("userActivity.activityUser is null"); //NOI18N
+               } else if (userActivity.getActivityUser().getUserId() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("userActivity.activityUser.userId is null"); //NOI18N
+               } else if (userActivity.getActivityUser().getUserId() < 1) {
+                       // Throw NPE again
+                       throw new IllegalArgumentException(MessageFormat.format("userActivity.activityUser.userId={0}  is not valid", userActivity.getActivityUser().getUserId())); //NOI18N
                } else if (userActivity.getActivityType() == null) {
                        // Throw again ...
                        throw new NullPointerException("userActivity.activityType is null"); //NOI18N
                } else if (userActivity.getActivityType().isEmpty()) {
                        // Empty type
-                       throw new NullPointerException("userActivity.activityType is empty"); //NOI18N
+                       throw new IllegalArgumentException("userActivity.activityType is empty"); //NOI18N
                } else if ((userActivity.getActivityMessage() instanceof String) && (userActivity.getActivityMessage().isEmpty())) {
                        // Set but empty message
-                       throw new NullPointerException("userActivity.activityMessage is empty"); //NOI18N
+                       throw new IllegalArgumentException("userActivity.activityMessage is empty"); //NOI18N
                } else if (userActivity.getActivityTimestamp() == null) {
                        // Throw NPE again
                        throw new NullPointerException("userActivity.activityTimestamp is null"); //NOI18N
                }
 
+               // Make user instance managed
+               User managedUser = this.getManagedUser(userActivity.getActivityUser());
+
+               // Set it back
+               userActivity.setActivityUser(managedUser);
+
                // All fine, persist it
                this.getEntityManager().persist(userActivity);