Author: seba.wagner
Date: Tue Jan 13 03:38:33 2009
New Revision: 1771
Modified:
trunk/webapp/filetest.keystore
trunk/webapp/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
trunk/webapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
trunk/webapp/src/app/org/openmeetings/app/remote/red5/Application.java
Log:
Some Debug connected to:
Issue 589 NullPointer Excpetion - missing or wrong RoomClients in List
Modified: trunk/webapp/filetest.keystore
==============================================================================
Binary files. No diff available.
Modified:
trunk/webapp/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
==============================================================================
---
trunk/webapp/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
(original)
+++
trunk/webapp/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
Tue Jan 13 03:38:33 2009
@@ -44,6 +44,10 @@
//Reflect the Reverse Order!!
public Fieldlanguagesvalues getFieldByIdAndLanguageByNavi(Long
fieldvalues_id, Long language_id) {
try {
+ if (fieldvalues_id == null) {
+ return null;
+ }
+
Object idf = HibernateUtil.createSession();
Session session = HibernateUtil.getSession();
Transaction tx = session.beginTransaction();
@@ -80,9 +84,9 @@
}
} catch (HibernateException ex) {
- log.error("[getFieldByIdAndLanguage]: " + ex);
+ log.error("[getFieldByIdAndLanguage]: " , ex);
} catch (Exception ex2) {
- log.error("[getFieldByIdAndLanguage]: " + ex2);
+ log.error("[getFieldByIdAndLanguage]: " , ex2);
}
return null;
}
@@ -101,9 +105,9 @@
return flv;
} catch (HibernateException ex) {
- log.error("[getFieldByIdAndLanguage]: " + ex);
+ log.error("[getFieldByIdAndLanguage]: " , ex);
} catch (Exception ex2) {
- log.error("[getFieldByIdAndLanguage]: " + ex2);
+ log.error("[getFieldByIdAndLanguage]: " , ex2);
}
return null;
}
@@ -124,9 +128,9 @@
return new Long(-28);
} catch (HibernateException ex) {
- log.error("[getFieldByIdAndLanguage]: " + ex);
+ log.error("[getFieldByIdAndLanguage]: " , ex);
} catch (Exception ex2) {
- log.error("[getFieldByIdAndLanguage]: " + ex2);
+ log.error("[getFieldByIdAndLanguage]: " , ex2);
}
return new Long(-1);
}
@@ -217,9 +221,9 @@
} catch (HibernateException ex) {
- log.error("[getConfKey]: " + ex);
+ log.error("[getConfKey]: " , ex);
} catch (Exception ex2) {
- log.error("[getConfKey]: " + ex2);
+ log.error("[getConfKey]: " , ex2);
}
return null;
}
Modified:
trunk/webapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
==============================================================================
--- trunk/webapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
(original)
+++ trunk/webapp/src/app/org/openmeetings/app/remote/WhiteBoardService.java
Tue Jan 13 03:38:33 2009
@@ -395,7 +395,7 @@
// return number;
// }
//
- public void removeUserFromAllLists(IScope scope, RoomClient
currentClient){
+ public synchronized void removeUserFromAllLists(IScope scope,
RoomClient
currentClient){
try {
Long room_id = currentClient.getRoom_id();
Modified:
trunk/webapp/src/app/org/openmeetings/app/remote/red5/Application.java
==============================================================================
--- trunk/webapp/src/app/org/openmeetings/app/remote/red5/Application.java
(original)
+++ trunk/webapp/src/app/org/openmeetings/app/remote/red5/Application.java
Tue Jan 13 03:38:33 2009
@@ -309,6 +309,13 @@
log.debug("streamid "+streamid);
log.debug("ClientList.size() "+ClientList.size());
+ for (Iterator<String>
iter=ClientList.keySet().iterator();iter.hasNext();) {
+ String key = iter.next();
+
+ RoomClient rcl = ClientList.get(key);
+ log.debug("RoomClient "+rcl.getStreamid()+ "
"+key+"
Username "+rcl.getUsername());
+ }
+
RoomClient currentClient = ClientList.get(streamid);
IScope scope = current.getScope();
@@ -353,14 +360,6 @@
currentClient.setIsRecording(true);
}
- this.disconnectUser(currentClient);
- //If this Room is empty clear the Room Poll List
- HashMap<String,RoomClient> rcpList =
this.getClientListByRoomAndDomain(room_id);
- log.debug("roomLeave rcpList size: "+rcpList.size());
- if (rcpList.size()==0){
- PollService.clearRoomPollList(room_id);
-// log.debug("clearRoomPollList cleared");
- }
//Notify all clients of the same currentScope (room)
with domain and
room
//except the current disconnected cause it could throw
an exception
@@ -401,7 +400,19 @@
}
}
}
- }
+ }
+
+
+ //Remove User AFTER cause otherwise the currentClient
Object is NULL ?!
+ this.disconnectUser(currentClient);
+ //If this Room is empty clear the Room Poll List
+ HashMap<String,RoomClient> rcpList =
this.getClientListByRoomAndDomain(room_id);
+ log.debug("roomLeave rcpList size: "+rcpList.size());
+ if (rcpList.size()==0){
+ PollService.clearRoomPollList(room_id);
+// log.debug("clearRoomPollList cleared");
+ }
+
} catch (Exception err) {
log.error("[roomLeaveByScope]",err);
}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en
-~----------~----~----~----~------~----~------~--~---