Need Help: GWT 2.12.2 / Java 17 / Tomcat 10.1.48 – SDBG Client Debugging Issue

83 views
Skip to first unread message

Shahram Zadeh

unread,
Nov 10, 2025, 11:57:38 PMNov 10
to GWT Users
Hello everyone,

After quite a bit of work, I was finally able to set up a Maven project with three modules (client, shared, and server) using GWT 2.12.2, Java 17, and Tomcat 10.1.48.
Everything builds, runs, and debugs correctly in Eclipse — except for one issue: when I hit a breakpoint in the client code, SDBG opens an uneditable copy of the Java source. I can navigate through it but not edit.
I’ve tried multiple classpath and source-path adjustments, but no luck so far. Even ChatGPT and Gemini couldn’t find a working fix.

Any ideas or solutions would be truly appreciated!
Best
Shahram...

Atul Vishwakarma

unread,
Nov 11, 2025, 3:41:32 AMNov 11
to GWT Users
Subject: Solution for SDBG Read-Only Source Issue in GWT 2.12.2 Maven Project

Hello everyone,

I wanted to follow up on the debugging issue where SDBG opens read-only copies of client code when hitting breakpoints in our GWT 2.12.2 Maven project with Eclipse.

After some research, I've found several potential solutions that should resolve this problem:

## Quick Fix - Launch Configuration Source Path

The most common solution is adjusting the Eclipse debug configuration:

1. Go to **Debug Configurations** (right-click your launch config)
2. Navigate to the **Source** tab
3. Click **Add** → **Java Project** → Select the **client module**
4. **Important**: Ensure the client project is at the **top** of the source lookup path
5. Remove any duplicate workspace entries that might be interfering

## Additional Solutions to Try

### Verify GWT Module Configuration
Ensure your GWT module XML includes:
```xml
<source path="client"/>
```

### Maven Plugin Configuration
Check that your `pom.xml` has the source directory properly configured:
```xml
<sourceDirectory>src/main/java</sourceDirectory>
```

### Eclipse Project Structure
- Verify `src/main/java` is listed as a source folder in **Java Build Path** → **Source**
- Confirm output folder points to `target/classes`

### Clean Rebuild Approach
If the above doesn't work, try this reset:
1. Clean all projects (**Project** → **Clean...**)
2. Delete `.classpath`, `.project`, and `.settings` from all modules
3. Reimport as Maven projects
4. Restart Eclipse

### Add Compiler Argument
As a last resort, add this to your GWT compiler arguments:
```
-src src/main/java
```

## Root Cause

The issue occurs when Eclipse's source lookup finds compiled class files or JARs before locating the actual source files. The key is prioritizing the client module's source directory in the lookup path.

Please let me know if any of these solutions work for your setup, or if you discover alternative fixes. Happy to discuss further!

Best regards

Shahram Zadeh

unread,
Nov 11, 2025, 2:12:09 PMNov 11
to GWT Users
Hi Atul and everyone,
The very first solution resolved the issue right away. I really appreciate the quick response — you saved me a lot of time. 

Best,
Shahram...
-------------------------------------------------------------------------------------------
## Quick Fix - Launch Configuration Source Path
The most common solution is adjusting the Eclipse debug configuration:

1. Go to **Debug Configurations** (right-click your launch config)
2. Navigate to the **Source** tab
3. Click **Add** → **Java Project** → Select the **client module**
4. **Important**: Ensure the client project is at the **top** of the source lookup path
5. Remove any duplicate workspace entries that might be interfering


eliasb...@gmail.com

unread,
Nov 11, 2025, 5:46:55 PMNov 11
to GWT Users
I am probably late to the party but I have fallen victim of the same kind of intricacies.

Classpath manipulation and consequently class loading order can be critical in such situations.

I have used Maven to control the classpath and drive the class loading order successfully in my projects.

Editing the Eclipse launch configurations can be equally important but quite infrequent.

Craig Mitchell

unread,
Nov 12, 2025, 5:57:46 PMNov 12
to GWT Users
I'm running IntelliJ Community Edition (the free version), which doesn't have any JavaScript debugger (probably should fork out the $$$ for the Ultimate, but anyway).

I prefer coding in IntelliJ, but do miss the JavaScript SDBG plugin Eclipse has.  So I just did this:
  1. Downloaded Eclipse (just the "IDE for Java Developers" version, not the "Enterprise Java and Web Developers", although,that would probably work too).
  2. Ran Eclipse creating a new workspace.
  3. Installed the SDBG plugin https://sdbg.github.io/  (unticked all the GWT stuff - just installed SDBG).
  4. Unticked "Build automatically" in the Eclipse Project menu.
  5. Imported my existing maven project.
  6. Created a new Debug config under "Launch Browser", entered my apps URL, selected my client module as the project, and added the client module in the source (as mentioned above).
  7. Back in IntelliJ, started everything up.
  8. Back in Eclipse, ran my new "Launch Browser" config.
  9. Put a breakpoint in the client code in Eclipse, hooray, it hits it!
Now I can debug the client and make small fixes in Eclipse, and swap back to IntelliJ for everything else.

Shahram Zadeh

unread,
Nov 12, 2025, 6:18:24 PMNov 12
to google-we...@googlegroups.com
You guys are awesome, sharing this kind of information is extremely valuable and important for the GWT community. 

--
You received this message because you are subscribed to a topic in the Google Groups "GWT Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-web-toolkit/ltSGnFQ4a0Q/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-web-tool...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/dc919576-659e-4851-a6ec-a05a16b708b9n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages