posts - 48, comments - 13, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          tapestry5中中文問題

          Posted on 2009-03-04 10:38 董銳 閱讀(898) 評論(1)  編輯  收藏
          <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
          <title>加上面這句才支持中文</title>
          </head>
          <body>
          加上面這句才支持中文
          </body>
          </html>


          /////////////////////////////////


          import java.io.IOException;

          import org.apache.tapestry5.*;
          import org.apache.tapestry5.ioc.MappedConfiguration;
          import org.apache.tapestry5.ioc.OrderedConfiguration;
          import org.apache.tapestry5.ioc.ServiceBinder;
          import org.apache.tapestry5.ioc.annotations.Local;
          import org.apache.tapestry5.services.Request;
          import org.apache.tapestry5.services.RequestFilter;
          import org.apache.tapestry5.services.RequestHandler;
          import org.apache.tapestry5.services.Response;
          import org.slf4j.Logger;

          /**
           * This module is automatically included as part of the Tapestry IoC Registry, it's a good place to
           * configure and extend Tapestry, or to place your own service definitions.
           */
          public class AppModule
          {
              public static void bind(ServiceBinder binder)
              {
                  // binder.bind(MyServiceInterface.class, MyServiceImpl.class);
                 
                  // Make bind() calls on the binder object to define most IoC services.
                  // Use service builder methods (example below) when the implementation
                  // is provided inline, or requires more initialization than simply
                  // invoking the constructor.
              }
             
             
              public static void contributeApplicationDefaults(
                      MappedConfiguration<String, String> configuration)
              {
                  // Contributions to ApplicationDefaults will override any contributions to
                  // FactoryDefaults (with the same key). Here we're restricting the supported
                  // locales to just "en" (English). As you add localised message catalogs and other assets,
                  // you can extend this list of locales (it's a comma separated series of locale names;
                  // the first locale name is the default when there's no reasonable match).
                 
                  configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en,zh_cn");

                  // The factory default is true but during the early stages of an application
                  // overriding to false is a good idea. In addition, this is often overridden
                  // on the command line as -Dtapestry.production-mode=false
                  configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
                 
                  configuration.add(SymbolConstants.COMPRESS_WHITESPACE, "false");
                  configuration.add(SymbolConstants.CHARSET, "UTF-8");//有了這句不知是不是可以不要用上面那句了,還沒試過
                  
              }
             

              /**
               * This is a service definition, the service will be named "TimingFilter". The interface,
               * RequestFilter, is used within the RequestHandler service pipeline, which is built from the
               * RequestHandler service configuration. Tapestry IoC is responsible for passing in an
               * appropriate Logger instance. Requests for static resources are handled at a higher level, so
               * this filter will only be invoked for Tapestry related requests.
               *
               * <p>
               * Service builder methods are useful when the implementation is inline as an inner class
               * (as here) or require some other kind of special initialization. In most cases,
               * use the static bind() method instead.
               *
               * <p>
               * If this method was named "build", then the service id would be taken from the
               * service interface and would be "RequestFilter".  Since Tapestry already defines
               * a service named "RequestFilter" we use an explicit service id that we can reference
               * inside the contribution method.
               */   
              public RequestFilter buildTimingFilter(final Logger log)
              {
                  return new RequestFilter()
                  {
                      public boolean service(Request request, Response response, RequestHandler handler)
                              throws IOException
                      {
                          long startTime = System.currentTimeMillis();

                          try
                          {
                              // The responsibility of a filter is to invoke the corresponding method
                              // in the handler. When you chain multiple filters together, each filter
                              // received a handler that is a bridge to the next filter.
                             
                              return handler.service(request, response);
                          }
                          finally
                          {
                              long elapsed = System.currentTimeMillis() - startTime;

                              log.info(String.format("Request time: %d ms", elapsed));
                          }
                      }
                  };
              }

              /**
               * This is a contribution to the RequestHandler service configuration. This is how we extend
               * Tapestry using the timing filter. A common use for this kind of filter is transaction
               * management or security. The @Local annotation selects the desired service by type, but only
               * from the same module.  Without @Local, there would be an error due to the other service(s)
               * that implement RequestFilter (defined in other modules).
               */
              public void contributeRequestHandler(OrderedConfiguration<RequestFilter> configuration,
                      @Local
                      RequestFilter filter)
              {
                  // Each contribution to an ordered configuration has a name, When necessary, you may
                  // set constraints to precisely control the invocation order of the contributed filter
                  // within the pipeline.
                 
                  configuration.add("Timing", filter);
              }
          }


          評論

          # re: tapestry5中中文問題  回復  更多評論   

          2013-03-15 13:46 by suifeng
          tapetry5 中 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
          經過測試上面這個語句是必須加的。。
          并且還不能在注釋中加中文 若加了 照樣報錯

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 济南市| 类乌齐县| 清涧县| 枝江市| 福州市| 乌什县| 双辽市| 阆中市| 巴彦县| 乐清市| 含山县| 洛阳市| 慈溪市| 平乡县| 盱眙县| 朝阳区| 文山县| 夏邑县| 河西区| 酒泉市| 汤阴县| 赞皇县| 兴宁市| 天祝| 津市市| 车致| 华安县| 崇信县| 射阳县| 临潭县| 张家口市| 高淳县| 渝中区| 图木舒克市| 太康县| 英德市| 武陟县| 海安县| 抚顺县| 清原| 罗甸县|