锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲国产一级在线观看,亚洲中文字幕久久精品无码APP,亚洲国产成人91精品http://www.tkk7.com/jacally/Java鍘熺敓鎬?/description>zh-cnFri, 09 May 2025 12:59:45 GMTFri, 09 May 2025 12:59:45 GMT60WebService寮鍙戠瑪璁?3 -- 澧炲姞WebService璁塊棶鐨勫畨鍏ㄦ?/title><link>http://www.tkk7.com/jacally/archive/2008/03/19/187161.html</link><dc:creator>Lib</dc:creator><author>Lib</author><pubDate>Wed, 19 Mar 2008 02:10:00 GMT</pubDate><guid>http://www.tkk7.com/jacally/archive/2008/03/19/187161.html</guid><wfw:comment>http://www.tkk7.com/jacally/comments/187161.html</wfw:comment><comments>http://www.tkk7.com/jacally/archive/2008/03/19/187161.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.tkk7.com/jacally/comments/commentRss/187161.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/jacally/services/trackbacks/187161.html</trackback:ping><description><![CDATA[<br /> 鍦?a href="http://www.tkk7.com/jacally/articles/186655.html">WebService寮鍙戠瑪璁?1</a>涓垜浠垱寤轟簡涓涓猈ebService綆鍗曞疄渚?涓嬮潰鎴戜滑閫氳繃涓涓畝鍗曠殑鐢ㄦ埛鍙d護楠岃瘉鏈哄埗鏉ュ姞寮轟竴涓媁ebService鐨勫畨鍏ㄦ? <br /> <br /> 1.淇敼WebService 鏈嶅姟绔?spring 閰嶇疆鏂囦歡 ws-context.xml <br /> <pre class="xml" name="code"><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws" xsi:schemaLocation="http://cxf.apache.org/jaxws <br /> <a >http://cxf.apache.org/schemas/jaxws.xsd</a> <br /> <a >http://www.springframework.org/schema/beans</a> <br /> http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName" default-lazy-init="true"> <jaxws:endpoint id="webServiceSample" address="/WebServiceSample" implementor="cn.org.coral.biz.examples.webservice.WebServiceSampleImpl"> <jaxws:inInterceptors> <bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" /> <bean class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"> <constructor-arg> <map> <entry key="action" value="UsernameToken" /> <entry key="passwordType" value="PasswordText" /> <entry key="passwordCallbackClass" value="cn.org.coral.biz.examples.webservice.handler.WsAuthHandler" /> </map> </constructor-arg> </bean> </jaxws:inInterceptors> </jaxws:endpoint> </beans> </pre> <br /> <br /> 2.鏈嶅姟绔坊鍔爌asswordCallbackClass鍥炶皟綾?璇ョ被榪涜鐢ㄦ埛鍙d護楠岃瘉: <br /> <pre class="java" name="code">package cn.org.coral.biz.examples.webservice.handler; import java.io.IOException; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.UnsupportedCallbackException; import org.apache.ws.security.WSPasswordCallback; public class WsAuthHandler implements CallbackHandler{ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { WSPasswordCallback pc = (WSPasswordCallback) callbacks[0]; if (pc.getIdentifer().equals("ws-client")){ if (!pc.getPassword().equals("admin")) { throw new SecurityException("wrong password"); } }else{ throw new SecurityException("wrong username"); } } } </pre> <br /> <br /> 3.瀹㈡埛绔慨鏀箂pring 閰嶇疆鏂囦歡 wsclient-context.xml 濡備笅: <br /> <pre class="xml" name="code"><?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws" xsi:schemaLocation="http://cxf.apache.org/jaxws <br /> <a >http://cxf.apache.org/schemas/jaxws.xsd</a> <br /> <a >http://www.springframework.org/schema/beans</a> <br /> http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName" default-lazy-init="true"> <!-- ws clinet --> <bean id="webServiceSampleClient" class="cn.org.coral.biz.examples.webservice.WebServiceSample" factory-bean="webServiceSampleClientFactory" factory-method="create" /> <bean id="webServiceSampleClientFactory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean"> <property name="serviceClass" value="cn.org.coral.biz.examples.webservice.WebServiceSample" /> <property name="address" value="http://88.148.29.54:8080/aio/services/WebServiceSample" /> <property name="outInterceptors"> <list> <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" /> <ref bean="wss4jOutConfiguration" /> </list> </property> </bean> <bean id="wss4jOutConfiguration" class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor"> <property name="properties"> <map> <entry key="action" value="UsernameToken" /> <entry key="user" value="ws-client" /> <entry key="passwordType" value="PasswordText" /> <entry> <key> <value>passwordCallbackRef</value> </key> <ref bean="passwordCallback" /> </entry> </map> </property> </bean> <bean id="passwordCallback" class="cn.org.coral.biz.examples.webservice.handler.WsClinetAuthHandler"> </bean> </beans> </pre> <br /> <br /> 4.瀹㈡埛绔坊鍔爌asswordCallback綾?閫氳繃璇ョ被璁劇疆璁塊棶鍙d護 <br /> <pre class="java" name="code">package cn.org.coral.biz.examples.webservice.handler; import java.io.IOException; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.UnsupportedCallbackException; import org.apache.ws.security.WSPasswordCallback; public class WsClinetAuthHandler implements CallbackHandler{ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { for (int i = 0; i < callbacks.length; i++) { WSPasswordCallback pc = (WSPasswordCallback) callbacks[0]; int usage = pc.getUsage(); System.out.println("identifier: " + pc.getIdentifer()); System.out.println("usage: " + pc.getUsage()); if (usage == WSPasswordCallback.USERNAME_TOKEN) { // username token pwd... pc.setPassword("admin"); } else if (usage == WSPasswordCallback.SIGNATURE) { // set the password for client's keystore.keyPassword pc.setPassword("keyPassword"); } } } } </pre> <br /> <br /> 5.junit鍗曞厓嫻嬭瘯紼嬪簭: <br /> <pre class="java" name="code">package cn.org.coral.biz.examples.webservice; import org.springframework.test.AbstractDependencyInjectionSpringContextTests; import org.springframework.util.Assert; public class TestWebService extends AbstractDependencyInjectionSpringContextTests { WebServiceSample webServiceSampleClient; @Override protected String[] getConfigLocations() { setAutowireMode(AUTOWIRE_BY_NAME); return new String[] { "classpath:/cn/org/coral/biz/examples/webservice/wsclient-context.xml" }; } /** * @param webServiceSampleClient the webServiceSampleClient to set */ public void setWebServiceSampleClient(WebServiceSample webServiceSampleClient) { this.webServiceSampleClient = webServiceSampleClient; } public void testSay(){ String result = webServiceSampleClient.say(" world"); Assert.hasText(result); } } </pre> <br /> <img src ="http://www.tkk7.com/jacally/aggbug/187161.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/jacally/" target="_blank">Lib</a> 2008-03-19 10:10 <a href="http://www.tkk7.com/jacally/archive/2008/03/19/187161.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[瀵煎叆]WebService寮鍙戠瑪璁?2 -- VS 2005 璁塊棶WebServcie鏇寸畝鍗?/title><link>http://www.tkk7.com/jacally/articles/186656.html</link><dc:creator>Lib</dc:creator><author>Lib</author><pubDate>Sun, 16 Mar 2008 13:41:00 GMT</pubDate><guid>http://www.tkk7.com/jacally/articles/186656.html</guid><wfw:comment>http://www.tkk7.com/jacally/comments/186656.html</wfw:comment><comments>http://www.tkk7.com/jacally/articles/186656.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/jacally/comments/commentRss/186656.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/jacally/services/trackbacks/186656.html</trackback:ping><description><![CDATA[<br /> 緗戠珯: <a >JavaEye</a>  浣滆? <a >jacally</a>  閾炬帴錛?a style="color: red" >http://lib.javaeye.com/blog/170628</a>  鍙戣〃鏃墮棿: 2008騫?3鏈?2鏃?<br /> <br /> 澹版槑錛氭湰鏂囩郴JavaEye緗戠珯鍙戝竷鐨勫師鍒涘崥瀹㈡枃绔狅紝鏈粡浣滆呬功闈㈣鍙紝涓ョ浠諱綍緗戠珯杞澆鏈枃錛屽惁鍒欏繀灝嗚拷絀舵硶寰嬭矗浠伙紒 <br /> <br /> 1.棣栧厛鍦╲s涓柊寤洪」鐩?<br /> <img alt="" src="http://lib.javaeye.com/upload/picture/pic/9222/0f3a1ad5-34c4-35b0-94d0-52d6cd25e7a1.jpg?1205321363" /> <br /> <br /> 2.娣誨姞web寮曠敤.... <br /> <img alt="" src="http://lib.javaeye.com/upload/picture/pic/9220/e5e21986-a77f-3918-8b12-8290e62456a1.jpg?1205321362" /> <br /> <br /> 3.杈撳叆WebService鍦板潃錛歨ttp://88.148.29.54:8080/aio/services/WebServiceSample?wsdl鏈鍚庣偣鍑?#8220;娣誨姞寮曠敤” <br /> <img alt="" src="http://lib.javaeye.com/upload/picture/pic/9218/d394c612-a53d-340a-bc28-fb405952b9b8.jpg?1205321361" /> <br /> <br /> 4.鍒涘緩涓涓畝鍗曠殑form <br /> <img alt="" src="http://lib.javaeye.com/upload/picture/pic/9216/7be4342c-d86e-3dec-a7fd-325a2257f0b7.jpg?1205321360" /> <br /> <br /> 5.緙栧啓鎸夐挳浜嬩歡浠g爜 <br /> <br /> <pre class="c#" name="code">using System;<br /> using System.Collections.Generic;<br /> using System.ComponentModel;<br /> using System.Data;<br /> using System.Drawing;<br /> using System.Text;<br /> using System.Net;<br /> <br /> using System.Windows.Forms;<br /> <br /> <br /> using WindowsApplication1.WebReference;<br /> <br /> namespace WindowsApplication1<br /> {<br /> public partial class Form1 : Form<br /> {<br /> WindowsApplication1.WebReference.WebServiceSampleImplService service = null;<br /> <br /> public Form1()<br /> {<br /> <br /> InitializeComponent();<br /> }<br /> <br /> private void button1_Click(object sender, EventArgs e)<br /> {<br /> <br /> <br /> String str = "";<br /> <br /> try<br /> {<br /> str = service.say("Libin");<br /> <br /> }<br /> catch (Exception we)<br /> {<br /> str = we.Message;<br /> }<br /> <br /> //MessageBox.Show(str);<br /> <br /> textBox1.Text = str ;<br /> <br /> <br /> }<br /> <br /> private void Form1_Load(object sender, EventArgs e)<br /> {<br /> service = new WebServiceSampleImplService();<br /> <br /> label1.Text = "WS.url:" + service.Url + "\r\n";<br /> <br /> }<br /> <br /> private void button2_Click(object sender, EventArgs e)<br /> {<br /> String str = "";<br /> <br /> try<br /> {<br /> User user = new User();<br /> user.id = 1;<br /> user.name = "Libin";<br /> str = "userName:" + service.sayUserName(user);<br /> <br /> }<br /> catch (Exception we)<br /> {<br /> str = we.Message;<br /> }<br /> <br /> //MessageBox.Show(str);<br /> <br /> textBox1.Text = str;<br /> }<br /> <br /> private void button3_Click(object sender, EventArgs e)<br /> {<br /> <br /> String str = "";<br /> try<br /> {<br /> <br /> Object[] users = service.findUsers();<br /> for (int i = 0; i < users.Length; i++)<br /> {<br /> User user = (User)users[i];<br /> str += "id:"+user.id + " name:" + user.name + "\r\n";<br /> }<br /> <br /> }<br /> catch (Exception we)<br /> {<br /> str = we.Message;<br /> }<br /> <br /> //MessageBox.Show(str);<br /> <br /> textBox1.Text = str;<br /> }<br /> }<br /> }</pre> <br /> <br /> 6.鏈鍚庣偣鍑昏皟璇曡繍琛岋紝鎴栨寜F5榪愯錛岄氳繃鐐瑰嚮鎸夐挳灝卞彲浠ョ湅鍒拌皟鐢╓ebService鐨勮繍琛岀粨鏋滀簡 <br /> <img alt="" src="http://lib.javaeye.com/upload/picture/pic/9214/d4de199c-d6e7-3e39-a69f-494a38b972c9.jpg?1205321360" /> <br /> <span style="color: red"><a style="color: red" >鏈枃鐨勮璁轟篃寰堢簿褰╋紝嫻忚璁ㄨ>></a> </span><br /> <br /> <br /> <span style="color: #e28822">JavaEye鎺ㄨ崘</span> <br /> <a href="/adverts/41" target="_blank"><span style="font-weight: bold; color: red">涓浗棰嗗厛鐨勭數瀛愬晢鍔$綉绔欙紞娣樺疂緗戞嫑璐ょ撼澹紝璇氳仒Java宸ョ▼甯?/span></a> <br /> <br /> <br /> <br /> 鏂囩珷鏉ユ簮:<a >http://lib.javaeye.com/blog/170628</a> <img src ="http://www.tkk7.com/jacally/aggbug/186656.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/jacally/" target="_blank">Lib</a> 2008-03-16 21:41 <a href="http://www.tkk7.com/jacally/articles/186656.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>WebService寮鍙戠瑪璁?1 -- 鍒╃敤cxf寮鍙慦ebService绔熺劧濡傛綆鍗?/title><link>http://www.tkk7.com/jacally/articles/186655.html</link><dc:creator>Lib</dc:creator><author>Lib</author><pubDate>Sun, 16 Mar 2008 13:40:00 GMT</pubDate><guid>http://www.tkk7.com/jacally/articles/186655.html</guid><wfw:comment>http://www.tkk7.com/jacally/comments/186655.html</wfw:comment><comments>http://www.tkk7.com/jacally/articles/186655.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.tkk7.com/jacally/comments/commentRss/186655.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/jacally/services/trackbacks/186655.html</trackback:ping><description><![CDATA[鐜板湪鐨勯」鐩腑闇瑕佺敤鍒癝OA姒傚康鐨勫湴鏂硅秺鏉ヨ秺澶?鏈榪戞垜鎺ユ墜鐨勪竴涓」鐩腑灝辨彁鍑轟簡榪欐牱鐨勪笟鍔¤姹?闇瑕佸湪.net寮鍙戠殑瀹㈡埛绔郴緇熶腑璁塊棶java寮鍙戠殑web緋葷粺,榪欐牱鐨勪笟鍔¢渶姹傝嚜鐒墮渶瑕侀氳繃WebService榪涜淇℃伅鏁版嵁鐨勬搷浣溿備笅闈㈠氨灝嗘垜浠湪寮鍙戜腑鎽哥儲鐨勪竴鐐圭粡楠屾暀璁葷粨浠ヤ笅錛屼互渚涘ぇ瀹跺弬鑰? <br /> <br /> 鎴戜滑欏圭洰鐨勬暣涓灦鏋勪嬌鐢ㄧ殑姣旇緝嫻佽鐨刉SH MVC緇勫悎,鍗硍ebwork2 + Spring + Hibernate; <br /> 1.棣栧厛闆嗘垚Apacha CXF WebService 鍒?Spring 妗嗘灦涓? <br /> apache cxf 涓嬭澆鍦板潃:<a target="_blank">http://people.apache.org/dist/incubator/cxf/2.0.4-incubator/apache-cxf-2.0.4-incubator.zip</a> <br /> 鍦╯pring context閰嶇疆鏂囦歡涓紩鍏ヤ互涓媍xf閰嶇疆 <br /> <pre class="xml" name="code"> <import resource="classpath*:META-INF/cxf/cxf.xml" /><br /> <import resource="classpath*:META-INF/cxf/cxf-extension-soap.xml" /><br /> <import resource="classpath*:META-INF/cxf/cxf-servlet.xml" /><br /> </pre> <br /> 鍦╳eb.xml涓坊鍔犺繃婊ゅ櫒: <br /> <pre class="xml" name="code"> <servlet><br /> <servlet-name>CXFServlet</servlet-name><br /> <servlet-class><br /> org.apache.cxf.transport.servlet.CXFServlet<br /> </servlet-class><br /> </servlet><br /> <servlet-mapping><br /> <servlet-name>CXFServlet</servlet-name><br /> <url-pattern>/services/*</url-pattern><br /> </servlet-mapping><br /> </pre> <br /> <br /> 2.寮鍙戞湇鍔$WebService鎺ュ彛: <br /> <pre class="java" name="code">/**<br /> * WebService鎺ュ彛瀹氫箟綾?<br /> * <br /> * 浣跨敤@WebService灝嗘帴鍙d腑鐨勬墍鏈夋柟娉曡緭鍑轟負Web Service.<br /> * 鍙敤annotation瀵硅緗柟娉曘佸弬鏁板拰榪斿洖鍊煎湪WSDL涓殑瀹氫箟.<br /> */<br /> @WebService<br /> public interface WebServiceSample {<br /> <br /> <br /> /**<br /> * 涓涓畝鍗曠殑鏂規硶,榪斿洖涓涓瓧絎︿覆<br /> * @param hello<br /> * @return<br /> */<br /> String say(String hello);<br /> <br /> /**<br /> * 紼嶅井澶嶆潅涓浜涚殑鏂規硶,浼犻掍竴涓璞$粰鏈嶅姟绔鐞?br /> * @param user<br /> * @return<br /> */<br /> String sayUserName(<br /> @WebParam(name = "user") <br /> UserDTO user);<br /> <br /> /**<br /> * 鏈澶嶆潅鐨勬柟娉?榪斿洖涓涓狶ist灝佽鐨勫璞¢泦鍚?br /> * @return<br /> */<br /> public <br /> @WebResult(partName="o")<br /> ListObject findUsers();<br /> <br /> }<br /> </pre> <br /> 鐢辯畝鍗曞埌澶嶆潅瀹氫箟浜嗕笁涓帴鍙?妯℃嫙涓氬姟闇姹? <br /> <br /> 3.瀹炵幇鎺ュ彛 <br /> <pre class="java" name="code">/**<br /> * WebService瀹炵幇綾?<br /> * <br /> * 浣跨敤@WebService鎸囧悜Interface瀹氫箟綾誨嵆鍙?<br /> */<br /> @WebService(endpointInterface = "cn.org.coral.biz.examples.webservice.WebServiceSample")<br /> public class WebServiceSampleImpl implements WebServiceSample {<br /> <br /> public String sayUserName(UserDTO user) {<br /> return "hello "+user.getName();<br /> }<br /> <br /> public String say(String hello) {<br /> return "hello "+hello;<br /> }<br /> <br /> public ListObject findUsers() {<br /> ArrayList<Object> list = new ArrayList<Object>();<br /> <br /> list.add(instancUser(1,"lib"));<br /> list.add(instancUser(2,"mld"));<br /> list.add(instancUser(3,"lq"));<br /> list.add(instancUser(4,"gj"));<br /> ListObject o = new ListObject();<br /> o.setList(list);<br /> return o;<br /> }<br /> <br /> private UserDTO instancUser(Integer id,String name){<br /> UserDTO user = new UserDTO();<br /> user.setId(id);<br /> user.setName(name);<br /> return user;<br /> }<br /> }<br /> </pre> <br /> <br /> 4.渚濊禆鐨勪袱涓被:鐢ㄦ埛瀵硅薄涓嶭ist瀵硅薄 <br /> <pre class="java" name="code">/**<br /> * Web Service浼犺緭User淇℃伅鐨凞TO.<br /> * <br /> * 鍒嗙entity綾諱笌web service鎺ュ彛闂寸殑鑰﹀悎錛岄殧緇漞ntity綾葷殑淇敼瀵規帴鍙g殑褰卞搷.<br /> * 浣跨敤JAXB 2.0鐨刟nnotation鏍囨敞JAVA-XML鏄犲皠錛屽敖閲忎嬌鐢ㄩ粯璁ょ害瀹?<br /> * <br /> */<br /> @XmlAccessorType(XmlAccessType.FIELD)<br /> @XmlType(name = "User")<br /> public class UserDTO {<br /> <br /> protected Integer id;<br /> <br /> protected String name;<br /> <br /> public Integer getId() {<br /> return id;<br /> }<br /> <br /> public void setId(Integer value) {<br /> id = value;<br /> }<br /> <br /> public String getName() {<br /> return name;<br /> }<br /> <br /> public void setName(String value) {<br /> name = value;<br /> }<br /> }<br /> </pre> <br /> 鍏充簬List瀵硅薄,鍙傜収浜?a target="_blank">鏈夊叧JWS鐨勪竴涓棶棰?/a>涓殑鎻忚堪:DK6.0 鑷甫鐨刉ebService涓?WebMethod鐨勫弬鏁板ソ鍍忎笉鑳芥槸ArrayList 鎴栬呭叾浠朙ist <br /> 浼犻扡ist闇瑕佸皢List 鍖呰鍦ㄥ叾浠栧璞″唴閮ㄦ墠琛?(涓漢鐞嗚В 濡傛湁涓嶅璇鋒寚鍑? ,鎴戝湪瀹炶返涓篃閬囧埌浜嗘綾婚棶棰?閫氳繃浠ヤ笅灝佽鐨勫璞″嵆鍙互浼犻扡ist瀵硅薄. <br /> <pre class="java" name="code">/**<br /> * <p>Java class for listObject complex type.<br /> * <br /> * <p>The following schema fragment specifies the expected content contained within this class.<br /> * <br /> * <pre><br /> * <complexType name="listObject"><br /> * <complexContent><br /> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"><br /> * <sequence><br /> * <element name="list" type="{http://www.w3.org/2001/XMLSchema}anyType" maxOccurs="unbounded" minOccurs="0"/><br /> * </sequence><br /> * </restriction><br /> * </complexContent><br /> * </complexType><br /> * </pre><br /> * <br /> * <br /> */<br /> @XmlAccessorType(XmlAccessType.FIELD)<br /> @XmlType(name = "listObject", propOrder = { "list" })<br /> public class ListObject {<br /> <br /> @XmlElement(nillable = true)<br /> protected List<Object> list;<br /> <br /> /**<br /> * Gets the value of the list property.<br /> * <br /> * <p><br /> * This accessor method returns a reference to the live list,<br /> * not a snapshot. Therefore any modification you make to the<br /> * returned list will be present inside the JAXB object.<br /> * This is why there is not a <CODE>set</CODE> method for the list property.<br /> * <br /> * <p><br /> * For example, to add a new item, do as follows:<br /> * <pre><br /> * getList().add(newItem);<br /> * </pre><br /> * <br /> * <br /> * <p><br /> * Objects of the following type(s) are allowed in the list<br /> * {@link Object }<br /> * <br /> * <br /> */<br /> public List<Object> getList() {<br /> if (list == null) {<br /> list = new ArrayList<Object>();<br /> }<br /> return this.list;<br /> }<br /> <br /> public void setList(ArrayList<Object> list) {<br /> this.list = list;<br /> }<br /> <br /> }<br /> </pre> <br /> <br /> 5.WebService 鏈嶅姟绔?spring 閰嶇疆鏂囦歡 ws-context.xml <br /> <pre class="xml" name="code"><beans xmlns="http://www.springframework.org/schema/beans"<br /> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br /> xmlns:jaxws="http://cxf.apache.org/jaxws"<br /> xsi:schemaLocation="http://cxf.apache.org/jaxws <a >http://cxf.apache.org/schemas/jaxws.xsd</a> <br /> <a >http://www.springframework.org/schema/beans</a> <br /> http://www.springframework.org/schema/beans/spring-beans.xsd"<br /> default-autowire="byName" default-lazy-init="true"><br /> <br /> <jaxws:endpoint id="webServiceSample"<br /> address="/WebServiceSample" implementor="cn.org.coral.biz.examples.webservice.WebServiceSampleImpl"/><br /> <br /> </beans><br /> </pre> <br /> <br /> WebService 瀹㈡埛绔?spring 閰嶇疆鏂囦歡 wsclient-context.xml <br /> <pre class="xml" name="code"><beans xmlns="http://www.springframework.org/schema/beans"<br /> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br /> xmlns:jaxws="http://cxf.apache.org/jaxws"<br /> xsi:schemaLocation="http://cxf.apache.org/jaxws <br /> <a >http://cxf.apache.org/schemas/jaxws.xsd</a> <br /> <a >http://www.springframework.org/schema/beans</a> <br /> http://www.springframework.org/schema/beans/spring-beans.xsd"<br /> default-autowire="byName" default-lazy-init="true"><br /> <br /> <!-- ws client --><br /> <bean id="identityValidateServiceClient" class="cn.org.coral.admin.service.IdentityValidateService"<br /> factory-bean="identityValidateServiceClientFactory" factory-method="create" /><br /> <br /> <bean id="identityValidateServiceClientFactory"<br /> class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean"><br /> <property name="serviceClass"<br /> value="cn.org.coral.admin.service.IdentityValidateService" /><br /> <property name="address"<br /> value="http://88.148.29.54:8080/coral/services/IdentityValidateService"/><br /> </bean><br /> <br /> </beans><br /> </pre> <br /> 6.鍙戝竷鍒皌omcat鏈嶅姟鍣ㄤ互鍚庨氳繃浠ヤ笅鍦板潃鍗沖彲鏌ョ湅鑷畾涔夌殑webservice鎺ュ彛鐢熸垚鐨剋sdl: <br /> http://88.148.29.54:8080/aio/services/WebServiceSample?wsdl <br /> <br /> 7.璋冪敤WebService鎺ュ彛鐨凧unit鍗曞厓嫻嬭瘯紼嬪簭 <br /> <pre class="java" name="code">package test.coral.sample;<br /> <br /> import org.springframework.test.AbstractDependencyInjectionSpringContextTests;<br /> <br /> import cn.org.coral.biz.examples.webservice.WebServiceSample;<br /> import cn.org.coral.biz.examples.webservice.dto.UserDTO;<br /> <br /> public class TestWebServiceSample extends<br /> AbstractDependencyInjectionSpringContextTests {<br /> WebServiceSample webServiceSampleClient;<br /> <br /> public void setWebServiceSampleClient(WebServiceSample webServiceSampleClient) {<br /> this.webServiceSampleClient = webServiceSampleClient;<br /> }<br /> <br /> @Override<br /> protected String[] getConfigLocations() {<br /> setAutowireMode(AUTOWIRE_BY_NAME);<br /> //spring 瀹㈡埛绔厤緗枃浠朵繚瀛樹綅緗?br /> return new String[] { "classpath:/cn/org/coral/biz/examples/webservice/wsclient-context.xml" };<br /> }<br /> <br /> public void testWSClinet(){<br /> Assert.hasText(webServiceSampleClient.say(" world"));<br /> }<br /> }<br /> <br /> </pre> <img src ="http://www.tkk7.com/jacally/aggbug/186655.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/jacally/" target="_blank">Lib</a> 2008-03-16 21:40 <a href="http://www.tkk7.com/jacally/articles/186655.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[瀵煎叆]CAS 鍗曠偣鐧誨綍瀹夎絎旇4 -- asp.net client绔殑璁劇疆http://www.tkk7.com/jacally/articles/186657.htmlLibLibSun, 02 Mar 2008 03:52:00 GMThttp://www.tkk7.com/jacally/articles/186657.htmlhttp://www.tkk7.com/jacally/comments/186657.htmlhttp://www.tkk7.com/jacally/articles/186657.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/186657.htmlhttp://www.tkk7.com/jacally/services/trackbacks/186657.html 緗戠珯: JavaEye  浣滆? jacally  閾炬帴錛?a style="color: red;">http://lib.javaeye.com/blog/166619  鍙戣〃鏃墮棿: 2008騫?3鏈?2鏃?

澹版槑錛氭湰鏂囩郴JavaEye緗戠珯鍙戝竷鐨勫師鍒涘崥瀹㈡枃绔狅紝鏈粡浣滆呬功闈㈣鍙紝涓ョ浠諱綍緗戠珯杞澆鏈枃錛屽惁鍒欏繀灝嗚拷絀舵硶寰嬭矗浠伙紒

CAS 鍗曠偣鐧誨綍瀹夎絎旇4
--- asp.net client绔殑璁劇疆

1銆侀鍏堜慨鏀箇eb.Config鏂囦歡錛屽姞鍏ヤ互涓嬭緗細
<authentication mode="Forms" >
<forms name="casauth" loginUrl="login.aspx" />
</authentication>
<authorization>
<deny users="?" />
</authorization>

鏈漢瀵?net涓嶆槸寰堢啛鎮夛紝鎰熻榪欓噷鐨勯厤緗被浼糺ava web搴旂敤紼嬪簭涓殑榪囨護鍣紝褰撶敤鎴瘋闂畐eb欏墊椂棣栧厛璺寵漿鍒發ogin.aspx欏甸潰榪涜楠岃瘉銆?

2銆佸姞鍏ヤ互涓媍#浠g爜鍒發ogin.aspx欏甸潰鐨勫姞杞戒簨浠朵腑錛?
    //CAS 韜喚楠岃瘉 鏈嶅姟鍣ㄥ湴鍧
private const string CASHOST = "https://sso.gzps.net:8443/cas/";

protected void Page_Load(object sender, EventArgs e)
{
System.Net.ServicePointManager.CertificatePolicy = new MyPolicy();

// Look for the "ticket=" after the "?" in the URL
string tkt = Request.QueryString["ticket"];

// This page is the CAS service=, but discard any query string residue
string service = Request.Url.GetLeftPart(UriPartial.Path);

// First time through there is no ticket=, so redirect to CAS login
if (tkt == null || tkt.Length == 0)
{
string redir = CASHOST + "login?" +
"service=" + service;
Response.Redirect(redir);
return;
}

// Second time (back from CAS) there is a ticket= to validate
string validateurl = CASHOST + "serviceValidate?" +
"ticket=" + tkt + "&"+
"service=" + service;
StreamReader Reader = new StreamReader( new WebClient().OpenRead(validateurl));
string resp = Reader.ReadToEnd();
// I like to have the text in memory for debugging rather than parsing the stream

// Some boilerplate to set up the parse.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);
XmlTextReader reader = new XmlTextReader(resp, XmlNodeType.Element, context);

string netid = null;

// A very dumb use of XML. Just scan for the "user". If it isn't there, its an error.
while (reader.Read())
{
if (reader.IsStartElement()) {
string tag = reader.LocalName;
if (tag=="user")
netid = reader.ReadString();
}
}
// if you want to parse the proxy chain, just add the logic above
reader.Close();
// If there was a problem, leave the message on the screen. Otherwise, return to original page.
if (netid == null)
{
Label1.Text = "CAS returned to this application, but then refused to validate your identity.";
}
else
{
Session["UserName"] = netid;
Label1.Text = "Welcome " + netid;
FormsAuthentication.RedirectFromLoginPage(netid, false); // set netid in ASP.NET blocks
}

}
}


浠ヤ笂浠g爜鍙傜収浜唈a-sig緗戠珯鐨勮В鍐蟲柟妗堬細http://www.ja-sig.org/wiki/display/CASC/ASP.NET+Forms+Authentication

3銆佷互涓鴻繖鏍峰氨鍙互浜嗭紝榪愯鏃跺彲浠ヨ煩鍒皊so鏈嶅姟鍣ㄨ繘琛岄獙璇侊紝浣嗚煩杞互鍚庢姤浠ヤ笅閿欒錛?
" System.Net.WebException銆?鍩虹榪炴帴宸插叧闂?鏃犳硶寤虹珛涓庤繙紼嬫湇鍔″櫒淇′換鍏崇郴 "銆?
搴旇涓嶤AS Server绔畨瑁呬簡鏁板瓧璇佷功錛岃?net Client绔茍娌℃湁瀹夎鐩稿簲鐨勮瘉涔︽湁鍏熾?
鍙互閫氳繃閰嶇疆IIS鏈嶅姟鍣紝鏀寔HTTPS SSL鍗忚瀹炵幇瀹夊叏鏁版嵁浜ゆ崲涓粙緇嶇殑姝ラ瀵煎叆CAS 鏈嶅姟绔殑鏁板瓧璇佷功,鎴栬呴氳繃http://support.microsoft.com/kb/823177/涓婁粙緇嶇殑瑙e喅鏂規榪涜澶勭悊錛?
瀹炵幇綾?
using System.Net;
using System.Security.Cryptography.X509Certificates;

public class MyPolicy : ICertificatePolicy {
public bool CheckValidationResult(
ServicePoint srvPoint
, X509Certificate certificate
, WebRequest request
, int certificateProblem) {

//Return True to force the certificate to be accepted.
return true;

} // end CheckValidationResult
} // class MyPolicy


瀹㈡埛绔唬鐮佷腑鍖呭惈涓嬪垪浠g爜錛?
   System.Net.ServicePointManager.CertificatePolicy = new MyPolicy();


鎵鏈変唬鐮佽闄勪歡WebSite.rar,灝嗗叾閮ㄧ講鍒頒綘鐨処IS鏈嶅姟鍣ㄥ氨鍙互浜嗐?
鍏充簬IIS鏈嶅姟鍣ㄧ殑璁劇疆瑙?a target="_blank">asp.net涓澶滈熸垚鏁欑▼
鏈枃鐨勮璁轟篃寰堢簿褰╋紝嫻忚璁ㄨ>>


JavaEye鎺ㄨ崘
涓浗棰嗗厛鐨勭數瀛愬晢鍔$綉绔欙紞娣樺疂緗戞嫑璐ょ撼澹紝璇氳仒Java宸ョ▼甯?/span>



鏂囩珷鏉ユ簮:http://lib.javaeye.com/blog/166619

Lib 2008-03-02 11:52 鍙戣〃璇勮
]]>
[瀵煎叆]CAS 鍗曠偣鐧誨綍瀹夎絎旇3 -- 涓巃cegi闆嗘垚http://www.tkk7.com/jacally/articles/186658.htmlLibLibThu, 28 Feb 2008 15:39:00 GMThttp://www.tkk7.com/jacally/articles/186658.htmlhttp://www.tkk7.com/jacally/comments/186658.htmlhttp://www.tkk7.com/jacally/articles/186658.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/186658.htmlhttp://www.tkk7.com/jacally/services/trackbacks/186658.html 緗戠珯: JavaEye  浣滆? jacally  閾炬帴錛?a style="color: red;">http://lib.javaeye.com/blog/165980  鍙戣〃鏃墮棿: 2008騫?2鏈?8鏃?

澹版槑錛氭湰鏂囩郴JavaEye緗戠珯鍙戝竷鐨勫師鍒涘崥瀹㈡枃绔狅紝鏈粡浣滆呬功闈㈣鍙紝涓ョ浠諱綍緗戠珯杞澆鏈枃錛屽惁鍒欏繀灝嗚拷絀舵硶寰嬭矗浠伙紒

CAS 鍗曠偣鐧誨綍瀹夎絎旇3
-- 涓巃cegi闆嗘垚

鍦ㄦ垜鐨勯」鐩腑搴旂敤浜哸cigi瀹夊叏妗嗘灦,浠ヤ笅鏄粨鍚坹ale cas鍗曠偣鐧誨綍緋葷粺榪涜鐨勭浉鍏抽厤緗?
<!-- =========  Acegi as a CAS Client鐨勯厤緗?============ -->
<bean id="authenticationProcessingFilter"
class="org.acegisecurity.ui.cas.CasProcessingFilter">
<property name="authenticationManager"
ref="authenticationManager" />
<property name="authenticationFailureUrl"
value="/login.do?login_error=1" />
<property name="defaultTargetUrl" value="/main.do" />
<property name="filterProcessesUrl">
<value>/j_acegi_cas_security_check</value>
</property>
<property name="rememberMeServices" ref="rememberMeServices" />
<property name="exceptionMappings">
<value>
org.acegisecurity.AuthenticationServiceException=/login.do?login_error=user_not_found_error
org.acegisecurity.BadCredentialsException=/login.do?login_error=user_psw_error
org.acegisecurity.concurrent.ConcurrentLoginException=/login.do?login_error=too_many_user_error
org.acegisecurity.DisabledException=/login.do?login_error=disabled_user_error
</value>
</property>
</bean>
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint">
<ref local="casProcessingFilterEntryPoint"/>
</property>
<property name="accessDeniedHandler">
<bean
class="org.acegisecurity.ui.AccessDeniedHandlerImpl">
<property name="errorPage"
value="/errors/accessDenied.jsp" />
</bean>
</property>
</bean>
<!-- cas config -->
<bean id="casProcessingFilterEntryPoint" class="org.acegisecurity.ui.cas.CasProcessingFilterEntryPoint">
<property name="loginUrl"><value>https://sso.gzps.net:8443/cas/login</value></property>
<property name="serviceProperties"><ref local="serviceProperties"/></property>
</bean>
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager">
<property name="providers">
<list>
<ref local="casAuthenticationProvider"/>
</list>
</property>
</bean>
<bean id="casAuthenticationProvider" class="org.acegisecurity.providers.cas.CasAuthenticationProvider">
<property name="casAuthoritiesPopulator"><ref bean="casAuthoritiesPopulator"/></property>
<property name="casProxyDecider"><ref local="casProxyDecider"/></property>
<property name="ticketValidator"><ref local="casProxyTicketValidator"/></property>
<property name="statelessTicketCache"><ref local="statelessTicketCache"/></property>
<property name="key"><value>my_password_for_this_auth_provider_only</value></property>
</bean>
<bean id="casProxyTicketValidator" class="org.acegisecurity.providers.cas.ticketvalidator.CasProxyTicketValidator">
<property name="casValidate"><value>https://sso.gzps.net:8443/cas/proxyValidate</value></property>
<property name="serviceProperties"><ref local="serviceProperties"/></property>
</bean>
<!--
<bean id="casProxyDecider" class="org.acegisecurity.providers.cas.proxy.AcceptAnyCasProxy" />
-->
<bean id="casProxyDecider" class="org.acegisecurity.providers.cas.proxy.RejectProxyTickets" />
<bean id="serviceProperties" class="org.acegisecurity.ui.cas.ServiceProperties">
<property name="service">
<value>http://localhost:8080/aio/j_acegi_cas_security_check</value>
</property>
<property name="sendRenew">
<value>false</value>
</property>
</bean>
<bean id="statelessTicketCache" class="org.acegisecurity.providers.cas.cache.EhCacheBasedTicketCache">
<property name="cache">
<bean class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager">
<bean class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"/>
</property>
<property name="cacheName" value="userCache"/>
</bean>
</property>
</bean>
<bean id="casAuthoritiesPopulator" class="org.acegisecurity.providers.cas.populator.DaoCasAuthoritiesPopulator">
<property name="userDetailsService"><ref local="userDetailsService"/></property>
</bean>

<bean id="casProcessingFilter" class="org.acegisecurity.ui.cas.CasProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="authenticationFailureUrl"><value>/casfailed.jsp</value></property>
<property name="defaultTargetUrl"><value>/</value></property>
<property name="filterProcessesUrl"><value>/j_acegi_cas_security_check</value></property>
</bean>


<!-- ======================================================= -->


鏈枃鐨勮璁轟篃寰堢簿褰╋紝嫻忚璁ㄨ>>


JavaEye鎺ㄨ崘
涓浗棰嗗厛鐨勭數瀛愬晢鍔$綉绔欙紞娣樺疂緗戞嫑璐ょ撼澹紝璇氳仒Java宸ョ▼甯?/span>



鏂囩珷鏉ユ簮:http://lib.javaeye.com/blog/165980

Lib 2008-02-28 23:39 鍙戣〃璇勮
]]>
[瀵煎叆]CAS 鍗曠偣鐧誨綍瀹夎絎旇2 -- 閰嶇疆CAS,璁塊棶鑷繁鐨勭敤鎴瘋〃http://www.tkk7.com/jacally/articles/186659.htmlLibLibWed, 27 Feb 2008 09:46:00 GMThttp://www.tkk7.com/jacally/articles/186659.htmlhttp://www.tkk7.com/jacally/comments/186659.htmlhttp://www.tkk7.com/jacally/articles/186659.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/186659.htmlhttp://www.tkk7.com/jacally/services/trackbacks/186659.html 緗戠珯: JavaEye  浣滆? jacally  閾炬帴錛?a style="color: red;">http://lib.javaeye.com/blog/165538  鍙戣〃鏃墮棿: 2008騫?2鏈?7鏃?

澹版槑錛氭湰鏂囩郴JavaEye緗戠珯鍙戝竷鐨勫師鍒涘崥瀹㈡枃绔狅紝鏈粡浣滆呬功闈㈣鍙紝涓ョ浠諱綍緗戠珯杞澆鏈枃錛屽惁鍒欏繀灝嗚拷絀舵硶寰嬭矗浠伙紒

CAS 鍗曠偣鐧誨綍瀹夎絎旇2


1.淇敼cas/webapp/WEB-INF/deployerConfigContext.xml
鍔犲叆浠ヤ笅瀹氫箟:
	<!-- 鏁版嵁婧愬畾涔?-->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close">
<property name="driverClassName" value="${db.driver}" />
<property name="url" value="${db.url}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />
</bean>
<!--
passwordEncoder銆浣跨敤Md5綆楁硶鍔犲瘑
-->
<bean id="passwordEncoder"
class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder" autowire="byName">
<constructor-arg value="MD5"/>
</bean>


2.灞忚斀鍘熸湁楠岃瘉鏂規硶:
				<!-- 
<bean
class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
-->


3.鍔犲叆閫氳繃璁塊棶鏁版嵁搴撹繘琛岄獙璇佺殑handler:
				<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<property name="sql" value="select password from CORE_USERS where logid=?" />
<property name="passwordEncoder" ref="passwordEncoder"/>
<property name="dataSource" ref="dataSource" />
</bean>


4.淇敼cas\webapp\WEB-INF\cas.properties,瀹氫箟鏁版嵁搴撹繛鎺ヨ祫婧?鏈緥瀛愭槸榪炴帴鐨刼racle鏁版嵁搴?
db.driver=oracle.jdbc.driver.OracleDriver
db.url=jdbc\:oracle\:thin\:@192.168.1.1\:1521\:xxxx
db.username=xxxx
db.password=xxxx


5.澧炲姞鐩稿叧jar鍖呭埌cas\webapp\WEB-INF\lib\鐩綍涓?
cas-server-support-jdbc-3.2.jar (cas榪炴帴鏁版嵁搴撶殑鏀寔鍖?
ojdbc14.jar (榪炴帴oracle鏁版嵁鐨刯dbc椹卞姩紼嬪簭)
鏈枃鐨勮璁轟篃寰堢簿褰╋紝嫻忚璁ㄨ>>


JavaEye鎺ㄨ崘
涓浗棰嗗厛鐨勭數瀛愬晢鍔$綉绔欙紞娣樺疂緗戞嫑璐ょ撼澹紝璇氳仒Java宸ョ▼甯?/span>



鏂囩珷鏉ユ簮:http://lib.javaeye.com/blog/165538

Lib 2008-02-27 17:46 鍙戣〃璇勮
]]>
[瀵煎叆]CAS 鍗曠偣鐧誨綍瀹夎絎旇1 -- 鍩烘湰璁劇疆涓庢暟瀛楄瘉涔︾殑瀹夎http://www.tkk7.com/jacally/articles/186660.htmlLibLibTue, 26 Feb 2008 08:35:00 GMThttp://www.tkk7.com/jacally/articles/186660.htmlhttp://www.tkk7.com/jacally/comments/186660.htmlhttp://www.tkk7.com/jacally/articles/186660.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/186660.htmlhttp://www.tkk7.com/jacally/services/trackbacks/186660.html 緗戠珯: JavaEye  浣滆? jacally  閾炬帴錛?a style="color: red;">http://lib.javaeye.com/blog/165196  鍙戣〃鏃墮棿: 2008騫?2鏈?6鏃?

澹版槑錛氭湰鏂囩郴JavaEye緗戠珯鍙戝竷鐨勫師鍒涘崥瀹㈡枃绔狅紝鏈粡浣滆呬功闈㈣鍙紝涓ョ浠諱綍緗戠珯杞澆鏈枃錛屽惁鍒欏繀灝嗚拷絀舵硶寰嬭矗浠伙紒

瀹夎JA-SIG SSO緋葷粺絎旇1

(鍏充簬閰嶇疆璁塊棶鏁版嵁搴撶殑鐢ㄦ埛琛ㄨ瀹夎JA-SIG SSO緋葷粺絎旇2)
(涓巃cegi緇撳悎閰嶇疆瑙?a target="_blank">瀹夎JA-SIG SSO緋葷粺絎旇3)
(ASP.NET client绔殑璁劇疆瑙?a target="_blank">瀹夎JA-SIG SSO緋葷粺絎旇4)

ps:閰嶇疆涓殑鏂囦歡璺緞鏍規嵁鑷繁鐨勫疄闄呮儏鍐電殑璁懼畾

1.瀹夎JA-SIG 鍒?TOMCAT;
JA-SIG涓嬭澆鍦板潃:
http://www.ja-sig.org/products/cas/downloads/index.html

2.鐢熸垚鏁板瓧璇佷功,瑙佹壒澶勭悊鏂囦歡"cas 鐢熸垚鏁板瓧璇佷功.bat";

3.閰嶇疆Tomcat鐨凥TTPS鏈嶅姟,淇敼server.xml
		<Connector protocol="org.apache.coyote.http11.Http11Protocol"
port="8443" minSpareThreads="5" maxSpareThreads="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="C:/Documents and Settings/Administrator/.keystore" keystorePass="changeit"
truststoreFile="D:/Java/jdk1.6.0_02/jre/lib/security/cacerts"
clientAuth="false" sslProtocol="TLS"/>


4.瀵煎嚭 SERVER 鐨勮瘉涔︼紝鐢ㄦ潵緇欐墍鏈夐渶瑕佺敤鍒扮殑瀹㈡埛绔鍏?瑙?瀵煎嚭 cas 鏁板瓧璇佷功.bat"

5.鍦ㄥ鎴風鐨?JVM 閲屽鍏ヤ俊浠葷殑 SERVER 鐨勮瘉涔?( 鏍規嵁鎯呭喌鏈夊彲鑳介渶瑕佺鐞嗗憳鏉冮檺 ),瑙?瀵煎叆 cas 璇佷功.bat"錛?

5.淇敼瀹㈡埛绔湇鍔$▼搴?鍔犲叆cas榪囨護鍣?淇敼web.xml
	<!-- CAS -->
<filter>
<filter-name>CAS Filter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://sso.gzps.net:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://sso.gzps.net:8443/cas/serviceValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>88.148.29.54:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CAS Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


鏈枃鐨勮璁轟篃寰堢簿褰╋紝嫻忚璁ㄨ>>


JavaEye鎺ㄨ崘
涓浗棰嗗厛鐨勭數瀛愬晢鍔$綉绔欙紞娣樺疂緗戞嫑璐ょ撼澹紝璇氳仒Java宸ョ▼甯?/span>



鏂囩珷鏉ユ簮:http://lib.javaeye.com/blog/165196

Lib 2008-02-26 16:35 鍙戣〃璇勮
]]>
Eclipse 鎻掍歡闆嗗悎http://www.tkk7.com/jacally/articles/127889.htmlLibLibTue, 03 Jul 2007 08:43:00 GMThttp://www.tkk7.com/jacally/articles/127889.htmlhttp://www.tkk7.com/jacally/comments/127889.htmlhttp://www.tkk7.com/jacally/articles/127889.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/127889.htmlhttp://www.tkk7.com/jacally/services/trackbacks/127889.htmlhttp://download.macromedia.com/pub/labs/jseclipse/autoinstall/ 
xfire:
 ttp://dist.codehaus.org/xfire/update/
m2eclipse:
http://m2eclipse.codehaus.org/

Lib 2007-07-03 16:43 鍙戣〃璇勮
]]>
鏀瑰彉宸茬粡鎵撳紑鐨勭獥鍙f牱寮?鎽?http://www.tkk7.com/jacally/articles/124345.htmlLibLibThu, 14 Jun 2007 08:45:00 GMThttp://www.tkk7.com/jacally/articles/124345.htmlhttp://www.tkk7.com/jacally/comments/124345.htmlhttp://www.tkk7.com/jacally/articles/124345.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/124345.htmlhttp://www.tkk7.com/jacally/services/trackbacks/124345.html<script language="JavaScript" type="text/JavaScript">
function init()
{
    
//window.resizeTo(700,500);  
    var top=0,left=0;
  
if(window.name   !=   "myWin")   
  
{   
    
//top = window.screenTop;
    
//left = window.screenLeft;
  var   oSon   =   window.open(window.location,"myWin","width=700,height=500");   
  window.open(window.location,
"myWin",   'big',   'fullscreen=yes');   
  oSon.window.moveTo(top,   left);   
  window.opener   
=   "";   
  window.close(); 
  oSon.focus();  
  }
       
}

</script>

Lib 2007-06-14 16:45 鍙戣〃璇勮
]]>
鎵撳紑鍜屼竴涓浘璞″ぇ灝忕殑紿楀彛錛岄殢鍥捐薄澶у皬浠繪剰鍙樺寲(鎶?http://www.tkk7.com/jacally/articles/124340.htmlLibLibThu, 14 Jun 2007 08:26:00 GMThttp://www.tkk7.com/jacally/articles/124340.htmlhttp://www.tkk7.com/jacally/comments/124340.htmlhttp://www.tkk7.com/jacally/articles/124340.html#Feedback0http://www.tkk7.com/jacally/comments/commentRss/124340.htmlhttp://www.tkk7.com/jacally/services/trackbacks/124340.html   
  <SCRIPT   LANGUAGE="JavaScript">  
  var   isNav4,   isIE4;  
  if   (parseInt(navigator.appVersion.charAt(0))   >=   4)   {  
  isNav4   =   (navigator.appName   ==   "Netscape")   ?   1   :   0;  
  isIE4   =   (navigator.appName.indexOf("Microsoft")   !=   -1)   ?   1   :   0;  
  }  
  function   fitWindowSize()   {  
  if   (isNav4)   {  
  window.innerWidth   =   document.layers[0].document.images[0].width;  
  window.innerHeight   =   document.layers[0].document.images[0].height;  
  }  
  if   (isIE4)   {  
  window.resizeTo(500,   500);  
  width   =   500   -   (document.body.clientWidth   -     document.images[0].width);  
  height   =   500   -   (document.body.clientHeight   -     document.images[0].height);  
  window.resizeTo(width,   height);  
        }  
  }  
  </script>

Lib 2007-06-14 16:26 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产美女在线精品免费观看| 亚洲av永久无码精品天堂久久| 久久久久亚洲AV成人网人人网站 | 亚洲中文字幕无码mv| 亚洲熟女综合一区二区三区| 亚洲乱码精品久久久久..| 亚洲人成电影福利在线播放| 亚洲国产精品综合久久网各| 亚洲成AV人片高潮喷水| 成人一区二区免费视频| 18禁美女黄网站色大片免费观看 | 亚洲精品国产成人片| 亚洲黄色在线观看网站| 一区二区亚洲精品精华液 | 亚洲国产一区二区三区在线观看 | 国产亚洲精品AAAA片APP| 两性色午夜免费视频| 91成人免费观看网站| 四虎国产精品免费视| 久久久亚洲精品视频| 精品亚洲456在线播放| www免费黄色网| 免费国产成人高清在线观看网站| 又粗又硬又黄又爽的免费视频| 国产aⅴ无码专区亚洲av| 亚洲kkk4444在线观看| 三根一起会坏掉的好痛免费三级全黄的视频在线观看 | 91亚洲国产成人久久精品网站| 亚洲高清国产拍精品熟女| GOGOGO高清免费看韩国| 在线视频免费观看高清| 国产精品亚洲综合一区| 亚洲免费观看网站| 一个人看的免费观看日本视频www| 18禁止看的免费污网站| 亚洲国产香蕉人人爽成AV片久久| 亚洲春黄在线观看| 国产精品成人69XXX免费视频| 91在线视频免费91| 亚洲AV无码精品色午夜在线观看| 蜜桃传媒一区二区亚洲AV|