مطالب آموزشی برنامه نویسی و مهندسی نرم افزار

نوشتن وب سرویس با استفاده از کتابخانه JAX-WS

 

کلاس وب سرویس

این کلاس شبیه کلاس های دیگر است با برچسب @WebService و متد هایی از این کلاس که باید قابلیت فراخوانی از طریق کلاینت ها را داشته باشند باید برچسب @WebMethod  خورده باشند.

مثال:

@WebService

public class SayHelloEndpoint }

 

    private SayHelloServiceImpl service;

 

    public SayHelloServiceImpl getService(){

        return service;

   }

 

    public void setService(SayHelloServiceImpl service(){

        this.service = service;

   }

 

    public SayHelloEndpoint(){

        this.service = new SayHelloServiceImpl();

   }

 

@WebMethod

    public String sayHello(String name){

 

        String ret = "nothing";

        if (name != null) {

            ret = service.sayHello(name);

}

 

        return ret;

   }

   

تعریف Endpoint ها

ابتدا فایلی بنام sun-jaxws.xml در WEB-INF ایجاد می کنیم. این فایل محل قرارگیری تنظیمات Endpoint هاست. مثال:

 

 

 

   

            url-pattern='/services2/SayHello'/>

 

   

              implementation="com.behsazan.corebanking.cms.webservice.endpoint.ChangeCardTransLimitEndpoint"

              url-pattern="/services2/ChangeCardTransLimit" />

   

 

 

 

اضافه کردن وابستگی ها به pom.xml

بعضی از این کتابخانه ها لزوماً نباید باشد اما با این ها حتماً کار می کند.

 

        

            javax.xml.bind

            jaxb-api

            2.2

       

       

            com.sun.xml.bind

            jaxb-impl

            2.2.6

       

       

            com.sun.xml.bind

            jaxb-xjc

            2.2.1.1

       

       

            javax.xml.ws

            jaxws-api

            2.2.1

       

       

            com.sun.xml.ws

            jaxws-rt

            2.1.7

       

       

            com.sun.xml.ws

            jaxws-tools

            2.1.7

       

تنظیمات web.xml

برای اینکه بتواند وب سرویس ها را به سمت سرولت JAX-WS هدایت کنیم:

 

        com.sun.xml.ws.transport.http.servlet.WSServletContextListener

   

   

        JAX-WS endpoint

        WSServlet

        WSServlet

        com.sun.xml.ws.transport.http.servlet.WSServlet

        1

   

   

        WSServlet

        /services2/*

   

 

تست

برنامه را اجرا کرده در آدرس بار نام Endpoint مورد نظر را می زنیم :

 

که چنین صفحه ای باید مشاهده شود:

 

همانطور که مشاهده می شود فایل wsdl  تولید شده با کلیک بر روی لینک می توان wsdl آنرا مشاهده کرد:

 

و فایل xsd آن که در کادر قرمز رنگ مشاهده می شود:

 

فایل pdf

فایل word

 

 

+ نوشته شده در  سه شنبه هجدهم آذر 1393ساعت 11:44  توسط وحید حسنی 

برای اینکه بتوانیم امنیت دسترسی به action ها را حفظ کنیم می توانیم از AuthorizeAttribute که ساده ترین نوع استفاده از آن به شکل زیر می باشد استفاده کنیم:

[Authorize]
 public ActionResult About()
 {
      throw new System.NotImplementedException();
  }

و برای اینکه از طریق کد بخواهیم کاربری را Authorize کنیم یعنی قدرتی به او بدهیم که بتواند از Action های برچسب Authorize خورده استفاده کند کافیست:

FormsAuthentication.SetAuthCookie(member.Name,false);

و برای آنکه بتوانیم او را از این حالت خارج سازیم:

 FormsAuthentication.SignOut();

و اگر بخواهیم در صفحات Razor نام کاربری او را مشاهده کنیم:

 @if (User.Identity.Name != string.Empty)
 {
    @User.Identity.Name
       
     @Html.ActionLink("خروج", "LogOff", "Members")    
}

 

 

+ نوشته شده در  جمعه چهاردهم شهریور 1393ساعت 0:35  توسط وحید حسنی 

فولدری که telerik در آن نصب شده = Telerik Folder و از این پس به اختصار TF
مثال C:\Program Files (x86)\Telerik\Extensions for ASP.NET MVC Q1 2012

  1. اضافه کردن فولدر های Content و Scripts از TF به پروژه
    نکته : برای صرفه جویی در فضا می تونید از Content ها Skin خاصی که انتخاب کردید را بیارید. یعنی یه همچین شکلی می شه فولدره Content:
    Content\2012.1.214\Sunset\
    Content\2012.1.214\telerik.sunset.min
    telerik.common.min.css
    telerik.rtl.min.css

  2. کپی فایل Telerik.Web.Mvc.dll از TF/Binaries/MVCx به فولدر bin پروژه و Reference دادن به آن.
  3. اضافه کردن namespace زیر به قسمت Pages وب کانفیگ
    add namespace="Telerik.Web.Mvc"
  4. اضافه کردن    به web.config
    <runtime>

        <assemblyBindingxmlns="urn:schemas-microsoft-com:asm.v1">

          <dependentAssembly>

            <assemblyIdentityname="System.Web.Helpers"publicKeyToken="31bf3856ad364e35" />

            <bindingRedirectoldVersion="1.0.0.0-2.0.0.0"newVersion="2.0.0.0" />

          dependentAssembly>

          <dependentAssembly>

            <assemblyIdentityname="System.Web.Mvc"publicKeyToken="31bf3856ad364e35" />

            <bindingRedirectoldVersion="0.0.0.0-4.0.0.0"newVersion="4.0.0.0" />

          dependentAssembly>

          <dependentAssembly>

            <assemblyIdentityname="System.Web.WebPages"publicKeyToken="31bf3856ad364e35" />

            <bindingRedirectoldVersion="0.0.0.0-2.0.0.0"newVersion="2.0.0.0" />

          dependentAssembly>

        assemblyBinding>

      runtime>

    به وب کانفیگ
  5. نوشتن کد زیر در انتهای صفحات یا مستر پیج سایت:
      @Html.Telerik().ScriptRegistrar()



  6. اضافه کردن استایل شیت ها به صفحات یا مستر پیج توسط کد زیر:
     @( Html.Telerik().StyleSheetRegistrar()
            .DefaultGroup(group => group.Add("telerik.common.css")
                                        .Add("telerik.vista.css").Add("telerik.rtl.css"))
        )

 

جهت تست:

یک کامپوننت روی صفحه مثل این کد بیاندازید:

       @(Html.Telerik().PanelBar().Name("myPanel").Items(factory =>
              {
                  factory.Add().Text("Panel1").Expanded(true).Items(subitem =>
                      {
                          subitem.Add().Text("sub item 1");
                          subitem.Add().Text("sub item 2");
                      });
                  factory.Add().Text("Panel2");
              })
              )

 

+ نوشته شده در  یکشنبه نهم شهریور 1393ساعت 15:6  توسط وحید حسنی 

اگر شما هم مثل من از پنلی که سمت راست برنامه KM-Player باز می شود و در آن تبلیغات مزخرفی به نمایش در می آید خسته شده اید، می توانید براحتی از طریق مراحل زیر مشکل را حل نمایید:

  1. اینترنت اکسپلورر را باز نمایید.
  2. از منوی tools به internet options بروید.
  3. سپس وارد تب Security شوید.
  4. روی آیکن ورود ممنوع یا همان Restricted sites کلیک نمائید.
  5. دکمه Sites
  6. در تکست باکس نام این سایت را بنویسید player.kmpmedia.net
  7. دکمه Add
  8. close
  9. ok

تمام

 


برچسب‌ها: متفرقه
+ نوشته شده در  سه شنبه سیزدهم خرداد 1393ساعت 1:56  توسط وحید حسنی 

برای تبدیل فایل های یوتیوب youtube و دانلود آنها از سایت http://clipconverter.cc و برای تبدیل فیلم های فیسبوک و دانلود آنها می شه از سایت http://en.savefrom.net استفاده کرد.

 


برچسب‌ها: دانلود
+ نوشته شده در  دوشنبه پانزدهم اردیبهشت 1393ساعت 14:33  توسط وحید حسنی