注意:是客戶端的ip,不是獲取本機(jī)的ip
import javax.servlet.http.*;
import javax.xml.rpc.server.*;
import org.apache.axis.MessageContext;
import org.apache.axis.transport.http.HTTPConstants;
public class BaseService {
? public String getClientIp(){
??? MessageContext? mc? =? MessageContext.getCurrentContext();
??? HttpServletRequest? request? =? (HttpServletRequest)? mc.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);
??? System.out.println("remote? ip:? "? +? request.getRemoteAddr());
??? return request.getRemoteAddr();
? }
}
1、配置%CATALINA_HOME%/conf/server.xml文件
???在<host>節(jié)點(diǎn)下的<context>節(jié)點(diǎn)中加
???<Resource
??????????? name="jdbc/oradb"
??????????? type="javax.sql.DataSource"
??????????? password="123456"
??????????? driverClassName="oracle.jdbc.driver.OracleDriver"
??????????? maxIdle="20"
??????????? maxWait="-1"
??????????? username="test"
??????????? url="jdbc:oracle:thin:@192.168.0.1:1521:oradb"
??????????? maxActive="1000"/>
2、配置項(xiàng)目的WEB-INF目錄下的web.xml文件,在<web-app>中加
?<resource-ref>
?<description>ORACLE DB Connection</description>
?<res-ref-name>jdbc/oradb</res-ref-name>
?<res-type>javax.sql.DataSource</res-type>
?<res-auth>Container</res-auth>
? </resource-ref>
3、連接
??Context ?initCtx = new InitialContext();
???if (initCtx == null)
???{
????throw new Exception("沒(méi)有匹配的環(huán)境!");
???}
???DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/oradb");???
???if (ds == null)
???{
????throw new Exception("沒(méi)有匹配的數(shù)據(jù)庫(kù)!");
???}
???con = ds.getConnection();
一般按照這幾步配置,就能連接成功了!如果這樣配置后還提示
java:comp is not bound in this Context
那就檢查你的項(xiàng)目的WEB-INF目錄下lib目錄中是否加進(jìn)了一些如
naming-java.jar,naming-common.jar , naming-resources.jar , naming-factory.jar 之類的包,把這些包從lib目錄刪除了,這些包不必放在這里
原來(lái)在tomcat5.0+axis 1.1下開發(fā)webservices,沒(méi)有問(wèn)題。部署的時(shí)候換成tomcat5.5,結(jié)果,EchoHeaders.jws?method=list老是報(bào)
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>java.lang.NullPointerException</faultstring>
趕緊上網(wǎng)查資料,原來(lái)是少 "xercesImpl.jar" and "xml-apis.jar"
解決:
???downloaded Xerces and put the "xercesImpl.jar" and "xml-apis.jar" files inside 項(xiàng)目的WEB-INF/lib/目錄中,問(wèn)題解決。
喜歡java的朋友多多支持,本人在學(xué)java web service,客戶端用delphi,有在做相同項(xiàng)目或做過(guò)相同項(xiàng)目的朋友多多交流。qq:5555196