0

LogProcessorforSwizを実行するためにあらゆることを試みます。これがプロジェクトFoomongerです。ただし、リソースが古いバージョンのswizを参照しているのではないかと心配しています。

いくつかの情報をthunderboltに記録する可能性だけが必要なため、SwizLoggerConfigなしでLogProceccorを実装したいと思います。これ以上の設定は必要ありません。その後、私は自分のAbstractSwizLoggingTargetを書き始めます。

クラスを自分の環境にコピーすると、次のエラーが発生します。TypeError:Error#1034:Typumwandlung fehlgeschlagen:org.swizframework.utils.logging :: SwizLogger @ e8aa8b1 kann nicht in mx.logging.ILoggerumgewandeltwerden。(ドイツ語のテキストは申し訳ありません)

Der Quelltext:

package de.axurit.util
{
    import org.swizframework.core.Bean;
    import org.swizframework.processors.BaseMetadataProcessor;
    import org.swizframework.processors.ProcessorPriority;
    import org.swizframework.reflection.IMetadataTag;
    import org.swizframework.utils.logging.SwizLogger;
    
    public class LoggerProcessor extends BaseMetadataProcessor
    {
        
        protected static const LOGGER:String = "Logger";
        
        public function LoggerProcessor()
        {
            super([LOGGER]);
        }
        
        override public function get priority():int
        {
            return ProcessorPriority.INJECT +1;
        }
        
        override public function setUpMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
        {
            var logger:SwizLogger = SwizLogger.getLogger(bean.source);
            bean.source[metadataTag.host.name] = logger; //here occurs the error
        }
        
        override public function tearDownMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
        {
            bean.source[metadataTag.host.name] = null;
        }
        
        
    }
}

Swizで中央ロギング(debugginではない)用の独自のMetadataProcessorを作成する方法を教えてもらえますか?もっとコードが必要です、教えてください

ありがとうフランク

4

1 に答える 1

0

長くて大変な旅でした。結果は次のとおりです。

package de.axurit.util
{
    import org.swizframework.core.Bean;
    import org.swizframework.processors.BaseMetadataProcessor;
    import org.swizframework.reflection.IMetadataTag;
    import org.swizframework.utils.logging.SwizLogger;

    public class LoggerProcessor extends BaseMetadataProcessor
    {
        public function LoggerProcessor()
        {
            super(["Log"]);
        }

        override public function setUpMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
        {
            super.setUpMetadataTag(metadataTag, bean);
            bean.source [metadataTag.host.name] = SwizLogger.getLogger(bean.source);
        }

        override public function tearDownMetadataTag(metadataTag:IMetadataTag, bean:Bean):void
        {
            super.tearDownMetadataTag(metadataTag,bean);
            bean.source[metadataTag.host.name] = null;
        }
    }
}
于 2011-10-18T12:59:51.337 に答える