diff --git a/impl/src/java/org/sakaiproject/bbb/impl/bbbapi/BaseBBBAPI.java b/impl/src/java/org/sakaiproject/bbb/impl/bbbapi/BaseBBBAPI.java
index 23ad059d..f42bf1a1 100644
--- a/impl/src/java/org/sakaiproject/bbb/impl/bbbapi/BaseBBBAPI.java
+++ b/impl/src/java/org/sakaiproject/bbb/impl/bbbapi/BaseBBBAPI.java
@@ -457,14 +457,14 @@ public boolean protectRecordings(String meetingID, String recordID, String prote
     /** Build the join meeting url based on user role */
     public String getJoinMeetingURL(String meetingID, String userId, String userDisplayName, String password) {
         StringBuilder query = new StringBuilder();
-        if (userId != null) {
-            try {
-                query.append("meetingID=");
-                query.append(URLEncoder.encode(meetingID, getParametersEncoding()));
+        try {
+            query.append("meetingID=");
+            query.append(URLEncoder.encode(meetingID, getParametersEncoding()));
+            if (userId != null) {
                 query.append("&userID=");
                 query.append(URLEncoder.encode(userId, getParametersEncoding()));
-            } catch (UnsupportedEncodingException e) {
             }
+        } catch (UnsupportedEncodingException e) {
         }
         query.append("&fullName=");
         if (userDisplayName == null) {