[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[jetty-users] java.lang.reflect.InaccessibleObjectException error in webapp
|
I run the shibboleth idp under jetty 12, generally very successfully. I
had a very strange failure today though.
I restarted one of my idp's earlier, which I do all of the time with no
problems.
Today though immediately after restarting, I started seeing ELException
errors (which were passed through to clients as a runtime error message
on their web browser), basically saying that it could not call
WarningIterator.hasNext() due to a
java.lang.reflect.InaccessibleObjectException because "module java.base
does not "opens java.util" to unnamed module @4eb45fec".
The idp uses spring webflow, and that message appears to be referring to
an expression evaluation in one of the flows:
<on-start>
<evaluate
expression="WarningConditionMap.entrySet().iterator()"
result="flowScope.WarningIterator" />
</on-start>
<decision-state id="CheckIterator">
<if test="WarningIterator.hasNext()" then="CheckCondition"
else="proceed" />
</decision-state>
but I have no idea why all the sudden it couldn't be called? Everything
I could see about this particular error recommends either "fixing your
code" or adding the "--add-opens" jvm argument to work around security
restrictions in the jvm.
Neither of those seems to apply? It's the same code that was always
running, and after looking at it for a bit and having no idea why it was
doing that, I restarted it again and the issue went away, so it was the
same code that was successfully running again.
I guess a solar flare hit a memory DIMM at just the wrong time and
screwed up some internal jvm state while it was starting? Very weird and
very disconcerting not knowing why it happened or if it might happen
again out of the blue at some point…
Any thoughts on what might have happened here? Thanks much…
2024-08-21 16:28:10,012 -
2620:df:8000:4702:0:2:800d:1bab/node0z14eizolsvyr15dii518s9huc11 - ERROR
[net.shibbo
leth.idp.profile.interceptor:35] - Uncaught runtime exception
org.springframework.binding.expression.EvaluationException: An
ELException occurred getting the value for expression
'WarningIterator.hasNext()' on context [class
org.springframework.webflow.engine.impl.RequestControlContextImpl]
at
org.springframework.binding.expression.spel.SpringELExpression.getValue(SpringELExpression.java:104)
Caused by: org.springframework.expression.spel.SpelEvaluationException:
EL1029E: A problem occurred when trying to execute method 'hasNext' on
object of type 'java.util.LinkedHashMap$LinkedEntryIterator': 'Problem
invoking method: public final boolean
java.util.LinkedHashMap$LinkedHashIterator.hasNext()'
at
org.springframework.expression.spel.ast.MethodReference.getValueInternal(MethodReference.java:159)
Caused by: org.springframework.expression.AccessException: Problem
invoking method: public final boolean
java.util.LinkedHashMap$LinkedHashIterator.hasNext()
at
org.springframework.expression.spel.support.ReflectiveMethodExecutor.execute(ReflectiveMethodExecutor.java:146)
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make
public final boolean
java.util.LinkedHashMap$LinkedHashIterator.hasNext() accessible: module
java.base does not "opens java.util" to unnamed module @4eb45fec
at
java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)