1

Weblogic10.3.3.0でスレッドがスタックしています。

Thread-465 "[STUCK] ExecuteThread: '33' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, suspended, priority=1, DAEMON> {
    java.util.HashMap$KeyIterator.next(HashMap.java:1012)
    java.util.HashMap.buildCache(HashMap.java:581)
    java.util.HashMap.resize(HashMap.java:557)
    java.util.HashMap.addEntry(HashMap.java:936)
    java.util.HashMap.put(HashMap.java:450)
    com.xyz.seeker.SpecialtyProvider.makeSpecialtyObjects(SpecialtyProvider.java:116)
    com.xyz.seeker.SpecialtyProvider.populateSpecialtyTree(SpecialtyProvider.java:91)
    com.xyz.seeker.SpecialtyProvider.getChildrenJson(SpecialtyProvider.java:74)
    com.xyz.seeker.SpecialtyProvider.doPost(SpecialtyProvider.java:42)
    com.xyz.seeker.SpecialtyProvider.doGet(SpecialtyProvider.java:36)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:700)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:815)
    weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:224)
    weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:108)
    weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:206)
    weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:55)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:82)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
    weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:55)
    weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:25)
    weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:55)
    weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(Unknown Source)
    weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(Unknown Source)
    weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308)
    weblogic.security.service.SecurityManager.runAs(SecurityManager.java:117)
    weblogic.servlet.internal.WebAppServletContext.securedExecute(Unknown Source)
    weblogic.servlet.internal.WebAppServletContext.execute(Unknown Source)
    weblogic.servlet.internal.ServletRequestImpl.run(Unknown Source)
    weblogic.work.ExecuteThread.execute(ExecuteThread.java:198)
    weblogic.work.ExecuteThread.run(ExecuteThread.java:165)

これをスローしているコードは次のとおりです。

public Specialty makeSpecialtyObjects(final ResultSet rs) throws java.sql.SQLException{
    Specialty root = new Specialty();
    root.setId(ROOTID);
    root.setTitle("root");
    Specialty specialty;
    parentIdMap = new HashMap<String,String>();
    specialtiesMap = new HashMap<String, Specialty>();
    parentIdMap.put(""+ROOTID,null);
    specialtiesMap.put(""+ROOTID,root);  << I think the exception is coming here.
    while (rs.next()){
        int id  = rs.getInt(1);
        String name = rs.getString(2).trim();
        int disabled  = rs.getInt(3);
        int primId  = rs.getInt(4);
        String primName = rs.getString(5).trim();
        int depId  = rs.getInt(7);
        String depName = rs.getString(8).trim();

これが私たちが持っている専門クラスです:

public class Specialty implements Serializable {
private String title;
private String id;
private List<Specialty> children;
private Specialty parent;
private boolean disabled;

別の人は、問題はブールプリミティブである可能性があると提案しましたが、それはシリアル化可能だと思います。次にどこを見ればいいのかわからない。この問題は本番環境でのみ取得できます。

4

0 に答える 0