Thanks for the quick reply. Grabbing the latest nREPL snapshot does indeed solve the ClassCastException issue. However, I now have a new Exception and I don't really want to spend time on it if it may be a result of not having the latest of everything again.
In the pasted console log below, the thing that seems odd to be is the port numbers. The server is started on port 64105 but then later port 64106 that is apparently closed and causing an Exception. The REPL of the running application says it is using 64106 and appears to work, so I'm not sure what's going on there. Also, opening a REPL to to ports 64105 or 64106 from either the development Eclipse or the running application all seem to work (it seems there are two ports open).
Maybe I'm out of my depth here (it always feels like that when looking at other software for the first time), or maybe this is something that needs to be solved to get to the bottom of the Namespace Browser issue. Maybe this is something I can ignore for now as it's due to the software being in an intermediate state of development. Once again, I'd appreciate a pointer so I don't spend too much time going down the wrong path.
Dave.
PS. I'm not seeing my own post in this group - does my membership/post need to be approved?
!SESSION 2012-10-09 10:43:03.383 -----------------------------------------------
eclipse.buildId=I20120608-1400
java.version=1.7.0_06
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
Framework arguments: -product org.eclipse.sdk.ide --launcher.XXMaxPermSize 1g
Command-line arguments: -product org.eclipse.sdk.ide -data C:\workspaces\Counterclockwise/../runtime-Counterclockwise -dev file:C:/workspaces/Counterclockwise/.metadata/.plugins/org.eclipse.pde.core/Eclipse Application/dev.properties -os win32 -ws win32 -arch x86_64 -consoleLog --launcher.XXMaxPermSize 1g
!ENTRY org.eclipse.core.resources 2 10035 2012-10-09 10:43:07.213
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
Warning: *optimize* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *optimize* or change the name.
Warning: *brackets-tags* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *brackets-tags* or change the name.
Warning: *commands* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *commands* or change the name.
Warning: *strict-commands* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *strict-commands* or change the name.
Warning: *configuration-based-commands* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *configuration-based-commands* or change the name.
Warning: *default-repl-port* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *default-repl-port* or change the name.
Warning: *ID* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *ID* or change the name.
Warning: *TARGET_ID* not declared dynamic and thus is not dynamically rebindable, but its name suggests otherwise. Please either indicate ^:dynamic *TARGET_ID* or change the name.
Leiningen Plugin start()
ccw.leiningen.util load starts
ccw.leiningen.util load starts
util namespace loaded
ccw.leiningen.classpath-container load starts
util namespace loaded
ccw.leiningen.classpath-container load starts
classpath-container namespace loaded
classpath-container namespace loaded
!ENTRY ccw.core 1 0 2012-10-09 10:43:42.300
!MESSAGE Started ccw nREPL server: nrepl://localhost:64105
!ENTRY ccw.core 1 0 2012-10-09 10:43:42.305
!MESSAGE Starting REPL with program args: -i "/C:/Users/dhartnoll/git/ccw/ccw.core/bin/ccw/debug/serverrepl.clj" -e "(require 'clojure.tools.nrepl.server)(do (clojure.tools.nrepl.server/start-server :ack-port 64105) nil)"
!ENTRY ccw.core 1 0 2012-10-09 10:43:43.201
!MESSAGE Adding to project's classpath to support nREPL: [C:\eclipse_targets\ccw_third_party\tools.nrepl-0.2.0-20121004.224629-45.jar]
ERROR: Unhandled REPL handler exception processing message {:id 469273ac-b4c3-4124-b2df-8f1b47296757, :op ack, :port 64106}
java.net.SocketException: Socket closed
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:116)
at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at clojure.tools.nrepl.transport$bencode$fn__3384.invoke(transport.clj:103)
at clojure.tools.nrepl.transport.FnTransport.send(transport.clj:28)
at clojure.tools.nrepl.ack$handle_ack$fn__6363.invoke(ack.clj:42)
at clojure.tools.nrepl.server$handle_STAR_.invoke(server.clj:18)
at clojure.tools.nrepl.server$handle$fn__6432.invoke(server.clj:27)
at clojure.core$binding_conveyor_fn$fn__3713.invoke(core.clj:1817)
at clojure.lang.AFn.call(AFn.java:18)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
!ENTRY ccw.core 1 0 2012-10-09 10:43:47.475
!MESSAGE Cannot handle REPL response: :ops{:ops {:clone {}, :close {}, :describe {}, :eval {}, :interrupt {}, :load-file {}, :ls-sessions {}, :stdin {}}, :session "edb7031a-8d27-436a-b3b2-412332888219", :status ["done"], :versions {:clojure {:incremental 0, :major 1, :minor 3}, :nrepl {:incremental "0", :major "0", :minor "2", :qualifier "SNAPSHOT"}}}
!ENTRY ccw.core 1 0 2012-10-09 10:43:47.478
!MESSAGE Cannot handle REPL response: :versions{:ops {:clone {}, :close {}, :describe {}, :eval {}, :interrupt {}, :load-file {}, :ls-sessions {}, :stdin {}}, :session "edb7031a-8d27-436a-b3b2-412332888219", :status ["done"], :versions {:clojure {:incremental 0, :major 1, :minor 3}, :nrepl {:incremental "0", :major "0", :minor "2", :qualifier "SNAPSHOT"}}}