본문 바로가기
IBM - old/WAS 문제&해결

native library 사용을 위한 LIBPATH 나 java.library.path 설정이 잘 안먹는 경우

by freeman98 2016. 5. 30.

1. WAS 버전 : IBM WAS All

2. OS : AIX

3. Error 발생 시점 : OS 변수로 native library 사용을 위한 LIBPATH 나 java.library.path 설정을 했는데 library 를 로드하지 못하고
                           Exception 발생

4. Error message :                   
[11/12/12 17:56:14:191 CST] 00000094 servlet       E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0014E: Uncaught service() exception root cause /XXXX.jsp: com.ibm.webspher
e.servlet.error.ServletErrorReport: java.lang.UnsatisfiedLinkError: XXXX (Not found in java.library.path)
        at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:695)
        at com.ibm._jsp.XXXX._jspService(XXXX.java:310)
        at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1224)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)
        at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
        at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:122)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:216)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1032)
        at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3748)
        at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:962)
        at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:459)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:526)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:312)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:283)
        at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
        at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1814)
Caused by: java.lang.UnsatisfiedLinkError: XXXX (Not found in java.library.path)
        at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:1053)
        at java.lang.ClassLoader.loadLibraryWithClassLoader(ClassLoader.java:1017)
        at java.lang.System.loadLibrary(System.java:509)
        at com.XXXX.XXXX.XXXX.<clinit>(ScpDbAgent.java:14)
        at java.lang.J9VMInternals.initializeImpl(Native Method)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:228)
        at com.ibm._jsp._XXXX._jspService(_XXXX.java:140)
        ... 28 more


5. 예상 이유 :
  OS 설정을 통해 native library 옵션의 경우 전체 Cell 의 재시작이 필요하나 제대로 전체 Cell 이 재시작이 안된것으로 보임
  or 다른 이유

6. 조치 방안:
  WAS 콘솔에서 OS 환경변수를 설정하는 방식을 이용
  Application servers > testServer > Process definition > Environment Entries 메뉴는 OS 변수를 WAS 차원에서 설정할 수 있는
  메뉴를 제공합니다. 해당 메뉴에서 하단과 같이 LIBPATH 를 정의
 
  LIBPATH /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/scp.....

댓글