Actions
Bug #13987
openUnexpected empty string in WAnchor
Start date:
09/16/2025
Due date:
% Done:
0%
Estimated time:
Description
WLink.resolveUrl(app)
can return an empty String
event though WLink.isNull()
returns true
. This should not be possible and causes an error in WAnchor
.
Here is the error:
java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:47)
at java.base/java.lang.String.charAt(String.java:693)
at eu.webtoolkit.jwt.WAnchor.renderHRef(WAnchor.java:383)
at eu.webtoolkit.jwt.WAnchor.updateDom(WAnchor.java:420)
at eu.webtoolkit.jwt.WWebWidget.createDomElement(WWebWidget.java:843)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:685)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:904)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WContainerWidget.createDomChildren(WContainerWidget.java:707)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:687)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:904)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WContainerWidget.createDomChildren(WContainerWidget.java:707)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:687)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:904)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WWidget.htmlText(WWidget.java:1252)
at eu.webtoolkit.jwt.WTemplate.resolveString(WTemplate.java:780)
at rega.genotype.ui.framework.widgets.Template.resolveString(Template.java:75)
at eu.webtoolkit.jwt.WTemplate.renderTemplateText(WTemplate.java:1095)
at eu.webtoolkit.jwt.WTemplate._block(WTemplate.java:164)
at eu.webtoolkit.jwt.WTemplate$BlockFunction.evaluate(WTemplate.java:229)
at eu.webtoolkit.jwt.WTemplate.resolveFunction(WTemplate.java:905)
at eu.webtoolkit.jwt.WTemplate.renderTemplateText(WTemplate.java:1088)
at eu.webtoolkit.jwt.WTemplate.renderTemplate(WTemplate.java:1008)
at eu.webtoolkit.jwt.WTemplate.updateDom(WTemplate.java:1170)
at eu.webtoolkit.jwt.WWebWidget.createDomElement(WWebWidget.java:843)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WContainerWidget.createDomChildren(WContainerWidget.java:707)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:687)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:904)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WContainerWidget.createDomChildren(WContainerWidget.java:707)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:687)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:904)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WContainerWidget.createDomChildren(WContainerWidget.java:707)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:687)
at eu.webtoolkit.jwt.WContainerWidget.createDomElement(WContainerWidget.java:904)
at eu.webtoolkit.jwt.WWebWidget.createActualElement(WWebWidget.java:882)
at eu.webtoolkit.jwt.WWidget.createSDomElement(WWidget.java:1502)
at eu.webtoolkit.jwt.WebRenderer.serveMainpage(WebRenderer.java:719)
at eu.webtoolkit.jwt.WebRenderer.serveResponse(WebRenderer.java:195)
at eu.webtoolkit.jwt.WebSession.serveResponse(WebSession.java:1981)
at eu.webtoolkit.jwt.WebSession.render(WebSession.java:1948)
at eu.webtoolkit.jwt.WebSession.notify(WebSession.java:316)
at eu.webtoolkit.jwt.WApplication.notify(WApplication.java:2646)
at rega.genotype.ui.framework.DboApplication.doNotify(DboApplication.java:47)
at rega.genotype.ui.framework.DboApplication.lambda$notify$0(DboApplication.java:37)
at com.genomedetective.core.db.Database.inTransaction(Database.java:515)
at rega.genotype.ui.framework.DboApplication.notify(DboApplication.java:32)
at eu.webtoolkit.jwt.WebSession.handleRequest(WebSession.java:1458)
at eu.webtoolkit.jwt.WtServlet.doHandleRequest(WtServlet.java:379)
at eu.webtoolkit.jwt.ServletApi.handleRequest(ServletApi.java:213)
at eu.webtoolkit.jwt.ServletApi$4.run(ServletApi.java:289)
at org.apache.catalina.core.AsyncContextImpl$RunnableWrapper.run(AsyncContextImpl.java:546)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:829)
No data to display
Actions