posts - 48, comments - 13, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

java.lang.ArrayIndexOutOfBoundsException
7
Stack trace
  • javassist.bytecode.StackMapTable$Walker.stackMapFrames(StackMapTable.java:192)
  • javassist.bytecode.StackMapTable$Walker.parse(StackMapTable.java:179)
  • javassist.bytecode.StackMapTable$Shifter.doit(StackMapTable.java:714)
  • javassist.bytecode.StackMapTable.shiftPc(StackMapTable.java:693)
  • javassist.bytecode.CodeIterator.insertGap0(CodeIterator.java:676)
  • javassist.bytecode.CodeIterator.insertGap(CodeIterator.java:636)
  • javassist.bytecode.CodeIterator.insertGapCore(CodeIterator.java:467)
  • javassist.bytecode.CodeIterator.insertGap(CodeIterator.java:413)
  • javassist.expr.Expr.replace0(Expr.java:298)
  • javassist.expr.FieldAccess.replace(FieldAccess.java:213)
  • org.apache.tapestry5.internal.services.InternalClassTransformationImpl$2.edit(InternalClassTransformationImpl.java:1739)
  • javassist.expr.ExprEditor.loopBody(ExprEditor.java:197)
  • javassist.expr.ExprEditor.doit(ExprEditor.java:90)
  • javassist.CtClassType.instrument(CtClassType.java:1289)
  • org.apache.tapestry5.internal.services.InternalClassTransformationImpl.replaceFieldAccess(InternalClassTransformationImpl.java:1745)
  • org.apache.tapestry5.internal.services.InternalClassTransformationImpl.performFieldTransformations(InternalClassTransformationImpl.java:1673)
  • org.apache.tapestry5.internal.services.InternalClassTransformationImpl.finish(InternalClassTransformationImpl.java:1336)
  • org.apache.tapestry5.internal.services.ComponentClassTransformerImpl.transformComponentClass(ComponentClassTransformerImpl.java:172)
  • org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl.onLoad(ComponentInstantiatorSourceImpl.java:201)
  • javassist.Loader.findClass(Loader.java:340)
  • org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl$PackageAwareLoader.findClass(ComponentInstantiatorSourceImpl.java:92)
  • javassist.Loader.loadClass(Loader.java:311)
  • java.lang.ClassLoader.loadClass(ClassLoader.java:252)
  • org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl.findClass(ComponentInstantiatorSourceImpl.java:292)
  • org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl.findInstantiator(ComponentInstantiatorSourceImpl.java:272)
  • org.apache.tapestry5.internal.services.PageElementFactoryImpl.newRootComponentElement(PageElementFactoryImpl.java:262)
  • org.apache.tapestry5.internal.services.PageLoaderProcessor.loadRootComponent(PageLoaderProcessor.java:412)
  • org.apache.tapestry5.internal.services.PageLoaderProcessor.loadPage(PageLoaderProcessor.java:390)
  • org.apache.tapestry5.internal.services.PageLoaderImpl.loadPage(PageLoaderImpl.java:59)
  • org.apache.tapestry5.internal.services.PagePoolCache.checkout(PagePoolCache.java:210)
  • org.apache.tapestry5.internal.services.PagePoolImpl.checkout(PagePoolImpl.java:99)
  • org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
  • org.apache.tapestry5.internal.services.RequestSecurityManagerImpl.checkForInsecureRequest(RequestSecurityManagerImpl.java:59)
  • org.apache.tapestry5.services.TapestryModule$35.handle(TapestryModule.java:1771)
  • org.apache.tapestry5.internal.services.PageRenderDispatcher.process(PageRenderDispatcher.java:92)
  • org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:71)
  • org.apache.tapestry5.services.TapestryModule$17.service(TapestryModule.java:1029)
  • cn.com.zzzz.store.services.AppModule$1.service(AppModule.java:88)
  • org.apache.tapestry5.internal.services.LocalizationFilter.service(LocalizationFilter.java:42)
  • org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
  • org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:621)
  • org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:611)
  • org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:85)
  • org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:93)
  • org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:84)
  • org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:83)
  • org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106)
  • org.apache.tapestry5.services.TapestryModule$16.service(TapestryModule.java:1007)
  • org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
  • org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
  • org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:179)
  • org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  • org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  • org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
  • org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
  • org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
  • org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
  • org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  • org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
  • org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
  • org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
  • org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
  • java.lang.Thread.run(Thread.java:619)


------------------------------------------------
转换.java文件时出错,错误竟然是“超出数组边界”,但文件中并没有使用任何数组,百思不得其解。

在此.java文件中有用到@ApplicationState  private User user;
但没有为user设置get和set方法,而是直接在.java文件中使用user=.....;

后修改为加上user的get和set方法,在.java文件中用setUser(....); getUser().....

上述错误解决,页面顺利显示。

posted @ 2009-03-14 19:27 董锐 阅读(547) | 评论 (0)编辑 收藏

Tapestry5ObtainingHttpServletRequest

Tapestry encapsulates the HTTP servlet request, response and session, and you should not normally need to access them directly. However, sometimes it is necessary. For example, Acegi Security stores exception messages in the HttpSession.

The underlying HTTP servlet mechanics are available via the [WWW] RequestGlobals service.

Example

    @Inject
private RequestGlobals requestGlobals;
public void onActivate(Object context) {
HttpSession session = requestGlobals.getHTTPServletRequest().getSession();
...
}

/!\ You need the servlet-api.jar in your classpath (dependency not included with tapestry quickstart).

Alternatively, you can inject the HttpServletRequest directly (at least in 5.0.13):

    @Inject
private HttpServletRequest _request;

RequestGlobals is not accessible inside of AppModule.





Copy From : http://wiki.apache.org/tapestry/Tapestry5ObtainingHttpServletRequest

posted @ 2009-03-08 23:40 董锐 阅读(549) | 评论 (0)编辑 收藏



From:  http://wiki.apache.org/tapestry/Tapestry5HowToCreateYourOwnComponents

posted @ 2009-03-08 23:27 董锐 阅读(191) | 评论 (0)编辑 收藏

Tapestry5的错误提示真的是非常详细,它不但指出错误在哪?还会把正确的信息都列出来哦,下面的错误提示把所有可用的service都列出来了,非常方便!
------------
@Inject
 @Service("HttpSession")
 private HttpSession session;
此处出错----------

Defined services: ActionRenderResponseGenerator, AjaxComponentEventRequestHandler, AjaxComponentEventResultProcessor, AjaxPartialResponseRenderer, Alias, AliasOverrides, ApplicationDefaults, ApplicationGlobals, ApplicationInitializer, ApplicationStateManager, ApplicationStatePersistenceStrategySource, AspectDecorator, AssetBindingFactory, AssetObjectProvider, AssetSource, BSFServiceImpl, BaseURLSource, BeanBlockOverrideSource, BeanBlockSource, BeanModelSource, BindingSource, ChainBuilder, ClassNameLocator, ClasspathAssetAliasManager, ClasspathAssetFactory, ClasspathURLConverter, ClientPersistentFieldStorage, ClientPersistentFieldStrategy, ComponentClassCache, ComponentClassFactory, ComponentClassResolver, ComponentClassTransformWorker, ComponentClassTransformer, ComponentDefaultProvider, ComponentEventRequestHandler, ComponentEventResultProcessor, ComponentInstanceResultProcessor, ComponentInstantiatorSource, ComponentInvocationMap, ComponentMessagesSource, ComponentSource, ComponentTemplateSource, Context, ContextAssetFactory, ContextPathEncoder, ContextValueEncoder, CookieSink, CookieSource, Cookies, CtClassSource, DataTypeAnalyzer, DefaultDataTypeAnalyzer, DefaultFileItemFactory, DefaultHibernateConfigurer, DefaultImplementationBuilder, EndOfRequestListenerHub, Environment, EnvironmentalShadowBuilder, ExceptionAnalyzer, ExceptionTracker, FactoryDefaults, FieldTranslatorSource, FieldValidationSupport, FieldValidatorDefaultSource, FieldValidatorSource, FormSupport, FreeMarkerService, GoogleMapService, HibernateEntityPackageManager, HibernateSessionManager, HibernateSessionSource, HibernateTransactionDecorator, HiddenFieldLocationRules, HiveMind, HttpServletRequest, HttpServletRequestHandler, IgnoredPathsFilter, ImageServiceImpl, InjectionProvider, InternalRequestGlobals, JasperReportsService, LinkFactory, LocalizationSetter, LocationRenderer, LoggingDecorator, MarkupRenderer, MarkupWriterFactory, MasterDispatcher, MasterObjectProvider, MessageBindingFactory, MetaDataLocator, MultipartDecoder, NullFieldStrategyBindingFactory, NullFieldStrategySource, ObjectRenderer, PageActivationContextCollector, PageContentTypeAnalyzer, PageDocumentGenerator, PageElementFactory, PageLoader, PageMarkupRenderer, PagePool, PageRenderQueue, PageRenderRequestHandler, PageResourcesSource, PageResponseRenderer, PageTemplateLocator, PartialMarkupRenderer, PersistentFieldManager, PersistentLocale, PipelineBuilder, PropBindingFactory, PropertyAccess, PropertyConduitSource, PropertyShadowBuilder, RegistryStartup, RenderSupport, Request, RequestExceptionHandler, RequestGlobals, RequestHandler, RequestPageCache, RequestPathOptimizer, RequestSecurityManager, ResourceCache, ResourceDigestGenerator, ResourceStreamer, Response, ResponseRenderer, ServiceLifecycleSource, ServletApplicationInitializer, Session, SessionApplicationStatePersistenceStrategy, StrategyBuilder, SymbolSource, TemplateParser, ThreadLocale, ThumbnailService, TranslateBindingFactory, TranslatorSource, TypeCoercer, URIAssetAliasManager, URIAssetFactory, URLEncoder, UpdateListenerHub, ValidateBindingFactory, ValidationConstraintGenerator, ValidationMessagesSource, ValueEncoderSource, VelocityService, WebApplicationContext, applicationEventMulticaster, dataSource, messageSource, org.springframework.aop.config.internalAutoProxyCreator, org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#0, productDao, productService, propertyConfigurer, sqlMapClient, transactionManager, txAdvice, user, userDao, userService.

posted @ 2009-03-08 10:37 董锐 阅读(315) | 评论 (0)编辑 收藏

开始加入t5c-commons-0.5.18.jar时,一直不知道使用里面组件时前缀该如何写,后来才知道org.apache.tapestry.commons包下TapestryCommonsModule类里 public static void contributeComponentClassResolver(Configuration<LibraryMapping> configuration)
    {
        configuration.add(new LibraryMapping("t5components", "org.apache.tapestry.commons"));
        configuration.add(new LibraryMapping("commons", "org.apache.tapestry.commons"));
    }
这个地方定义了前缀。
从这里可以看出,这个包下t5components和commons两个前缀都可以用。
<t:t5components/AjaxCheckbox></t:t5components/AjaxCheckbox>

posted @ 2009-03-04 14:53 董锐 阅读(172) | 评论 (0)编辑 收藏

本来tapesty5有很精确的错误提示,但是我的怎么就没有了呢?
后来在网上找到这样一句话:
tapestry5有个production-mode,默认的为true,可以在作为产品发布时,提供精简的错误信息,在开发时,异常信息当然是越精确越好,而且精确的异常信息也是tapestry的强项,可以很准确的告诉您错误出在哪里,所以在开发时这个选项要关掉,选中运行配置中的arguments标签,在vm
arguments中添加-Dtapestry.production-mode=false

出处:http://tapestry.javaeye.com/blog/191803

我于是在jvm arguments中添加了-Dtapestry.production-mode=false,果然可以了!!谢谢这位仁兄!



//////////////////////////////////////////////////////////////////////////////////
上述问题的另外解决方法:不在jvm中添加参数,而是在service包下增加下面这个文件:


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");//有了这句就不用加jvm arguments了
        
        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);
    }
}


posted @ 2009-03-04 13:59 董锐 阅读(510) | 评论 (0)编辑 收藏

<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);
    }
}

posted @ 2009-03-04 10:38 董锐 阅读(894) | 评论 (1)编辑 收藏

  • java.lang.ClassNotFoundException
    caught an exception while obtaining a class file for cn.com.eTrans.manageCar.pages.Login
    exception
    org.apache.tapestry5.internal.services.TransformationException: javassist.NotFoundException: org.apache.tapestry.commons.components.AjaxCheckbox
  • org.apache.tapestry5.internal.services.TransformationException
    javassist.NotFoundException: org.apache.tapestry.commons.components.AjaxCheckbox

  • 这个问题我想了好久,也盯着它看了好久,我真是不解,org.apache.tapestry.commons.components.AjaxCheckbox明明就在那,怎么会找不到呢?

    后来终于找到原因了:
    没有将t5c-commons-0.5.18.jar包放在web-info/lib下!!!!
    tapestry5是按自己的方式找文件的,不在web-info在的找不到!!!!

    posted @ 2009-02-27 18:00 董锐 阅读(138) | 评论 (0)编辑 收藏

    java.lang.IllegalArgumentException
    Unable to resolve 't5components/AjaxCheckbox' to a component class name. Available component types: ActionLink, AddRowLink, AjaxFormLoop, Any, BeanDisplay, BeanEditForm, BeanEditor, Checkbox, DateField, Delegate, Errors, EventLink, ExceptionDisplay, Form, FormFragment, FormInjector, Grid, GridCell, GridColumns, GridPager, GridRows, If, Label, LinkSubmit, Loop, Output, OutputRaw, PageLink, Palette, PasswordField, PropertyDisplay, PropertyEditor, Radio, RadioGroup, RemoveRowLink, RenderObject, Select, Submit, SubmitNotifier, TextArea, TextField, TextOutput, Unless, Zone.



    如何解决?待续

    后来终于找到原因了:
    没有将t5c-commons-0.5.18.jar包放在web-info/lib下!!!!
    tapestry5是按自己的方式找文件的,不在web-info在的找不到!!!!

    posted @ 2009-02-27 14:13 董锐 阅读(548) | 评论 (0)编辑 收藏

    记录下载安装及破解所查看的一些网站和资料:

        rational rose下载:

      http://tseg.org/~dxiao/SEPractice/Rational2003/RationalRoseEnterpriseEditionforWindows.2003.06.00.391.000.exe

    1.安装Rose,默认是需要许可证书的..去下载个破解的..
    http://www.cnblogs.com/Files/lixianhuei/rose2003crack.rar
    2.先用破解压缩包里的 rational.exelmgrd.exe 覆盖到你的 \安装目录的Rartional\commen\

    3.然后记事本打开 license.dat, 修改里面的 SERVER yourPC ANY DAEMON rational "C:\Program Files\Rational\Common\rational.exe"
    改成 SERVER 你的机器名 ANY DAEMON rational "你的安装目录\rational.exe" ,拷贝到Common目录下..

    4. Flexlm.cpl拷贝到C:\winnt\system32\下, 在控制面板里运行 FlexLm License Manager
    运行后, Setup 面板配置文件路径,lmgrd.exe -> 你的安装目录 \Common\lmgrd.exe, License File 为你改过的 license.dat ...

    (我用的是xp,目录为C:\WINDOWS\system32


    5.
    Control面板点击Start,如果成功的话点击Status按钮将显示 你的机器名:license server UP (MASTER) 说明成功了
    失败的话重启一下FlexLm License Manager就没问题了。

    6.如果弹出对话框License Key Administrator Wizard, 选定Point to a Rational License Server to get my licenses,单击下一步,
    Server Name
    文本框中填写你的机器号(可能已经填好),单击完成。 (成功的话会出现两屏的licenses)

    posted @ 2009-02-22 14:43 董锐 阅读(661) | 评论 (0)编辑 收藏

    仅列出标题
    共5页: 上一页 1 2 3 4 5 下一页