Ticket #132 (new defect)

Opened 5 months ago

Last modified 5 months ago

NullReferenceException in Mime Multipart Form

Reported by: sumip@… Owned by:
Priority: blocker Milestone: 2.0 Release Candidate
Component: Codecs Version:
Keywords: Cc:
Time remaining: 1d Blocked By:
Time spent: 1d Time planned: 1d
Blocking:

Description (last modified by serialseb) (diff)

Creating a mime message with a stream and multiple simple values worked out fine, but submitting a data contract and a stream produced an exception in OR. Might be the WCF REST starter kit, but probably worth looking into:

Mime-Form:

PUT http://127.0.0.1:56789/uploads/block/ HTTP/1.1
Accept: */*
Referer: http://ipv4.fiddler:56789/ClientBin/Silverlight%20Client.xap
Content-Length: 66183
Accept-Encoding: identity
Content-Type: multipart/form-data; boundary=9843cff13a457ca558b43420
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7
Host: 127.0.0.1:56789
Connection: Keep-Alive
Pragma: no-cache

--9843cff13a457ca558b43420
Content-Disposition: form-data; name="dataBlock"; filename="dataBlock"
Content-Type: application/xml

<?xml version="1.0" encoding="utf-8"?><DataBlockInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Vfs.Transfer"><BlockLength>65536</BlockLength><BlockNumber>0</BlockNumber><IsLastBlock>false</IsLastBlock><Offset>0</Offset><TransferTokenId>my-transfer</TransferTokenId></DataBlockInfo>
--9843cff13a457ca558b43420
Content-Disposition: form-data; name="blockData"; filename="blockData"
Content-Type: application/octet-stream
[binary data here]''


OR Output:
3-[2010-02-15 08:48:29Z] Verbose(0) Incoming host request for http://localhost:56789/uploads/block/
13-[2010-02-15 08:48:29Z] Verbose(0) Adding communication context data
13-[2010-02-15 08:48:29Z] Warning(0) Contributor call for BootstrapperContributor had a null Action.
13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor HttpMethodOverriderContributor.OverrideHttpVerb
13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor DigestAuthorizerContributor.ReadCredentials
13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor UriDecoratorsContributor.ProcessDecorators
13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor ResourceTypeResolverContributor.ResolveResource
13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
13-[2010-02-15 08:48:29Z] Verbose(0) Rewrote path.
13-[2010-02-15 08:48:29Z] Start(1) Entering OpenRastaRewriterHandler: Rewriting to original path
    13-[2010-02-15 08:48:29Z] Start(1) Entering OpenRastaIntegratedHandler: Request for http://localhost:56789/uploads/block/
        13-[2010-02-15 08:48:29Z] Verbose(0) Incoming host request for http://localhost:56789/uploads/block/
        13-[2010-02-15 08:48:29Z] Verbose(0) Adding communication context data
        13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor HandlerResolverContributor.ResolveHandler
        13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
        13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor OperationCreatorContributor.CreateOperations
            13-[2010-02-15 08:48:29Z] Verbose(0) Created operation named GetUploadToken wth signature UploadHandler::GetUploadToken(String fileName, Int64 fileLength, String contentType)
            13-[2010-02-15 08:48:29Z] Verbose(0) Created operation named CompleteUpload wth signature UploadHandler::CompleteUpload(String transferId)
            13-[2010-02-15 08:48:29Z] Verbose(0) Created operation named WriteDataBlock wth signature UploadHandler::WriteDataBlock(String transferId, Stream blockData, Int64 dataBlockNumber, Int32 dataBlockLength, Int64 dataBlockOffset, Boolean isLastBlock)
            13-[2010-02-15 08:48:29Z] Verbose(0) Created operation named WriteDataBlock wth signature UploadHandler::WriteDataBlock(DataBlockInfo dataBlock, Stream blockData)
        13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
        13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor OperationFilterContributor.ProcessOperations
            13-[2010-02-15 08:48:29Z] Verbose(0) Found 0 operation(s) with a matching name.
            13-[2010-02-15 08:48:29Z] Verbose(0) Found 1 operation(s) with matching [HttpOperation] attribute.
            13-[2010-02-15 08:48:29Z] Verbose(0) No resource or no uri name. Not filtering.
        13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
        13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor OperationCodecSelectorContributor.ProcessOperations
            13-[2010-02-15 08:48:29Z] Information(0) Operation UploadHandler::WriteDataBlock(DataBlockInfo dataBlock, Stream blockData) selected with 2 required members and 0 optional members, with codec MultipartFormDataKeyedValuesCodec with score 0.8333334.
        13-[2010-02-15 08:48:29Z] Stop(1) Exiting PipelineRunner
        13-[2010-02-15 08:48:29Z] Start(1) Entering PipelineRunner: Executing contributor OperationHydratorContributor.ProcessOperations
            13-[2010-02-15 08:48:29Z] Information(0) Operation UploadHandler::WriteDataBlock(DataBlockInfo dataBlock, Stream blockData) was selected with a codec score of 0.8333334
            13-[2010-02-15 08:48:29Z] Information(0) Loaded codec OpenRasta.Codecs.MultipartFormDataKeyedValuesCodec
            13-[2010-02-15 08:48:29Z] Information(0) Codec supports IKeyedValuesMediaTypeReader. Processing parameters.
            13-[2010-02-15 08:48:29Z] Verbose(0) Seeking to next available part
            13-[2010-02-15 08:48:29Z] Verbose(0) Skip the preamble. AtPreamble was True.
            13-[2010-02-15 08:48:29Z] Verbose(0) not null
            13-[2010-02-15 08:48:29Z] Verbose(0) Preamble found: True of size 0
            13-[2010-02-15 08:48:29Z] Verbose(0) not null
            13-[2010-02-15 08:48:29Z] Verbose(0) not null
            13-[2010-02-15 08:48:29Z] Verbose(0) not null
            13-[2010-02-15 08:48:29Z] Verbose(0) Skip the preamble. AtPreamble was False.
            13-[2010-02-15 08:48:29Z] Verbose(0) Preamble found: False of size 0
            13-[2010-02-15 08:48:29Z] Verbose(0) not null
            13-[2010-02-15 08:48:29Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) Seeking to next available part
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) Skip the preamble. AtPreamble was False.
            13-[2010-02-15 08:48:30Z] Verbose(0) Preamble found: False of size 0
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) Seeking to next available part
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
            13-[2010-02-15 08:48:30Z] Verbose(0) not null
A first chance exception of type 'System.NullReferenceException' occurred in OpenRasta.DLL
            13-[2010-02-15 08:48:30Z] Error(0) An error of type System.NullReferenceException has been thrown
            13-[2010-02-15 08:48:30Z] Error(0) System.NullReferenceException: Object reference not set to an instance of an object.
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Codecs.AbstractMultipartFormDataCodec.ConvertValues(IMultipartHttpEntity entity, Type targetType) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Codecs\multipart\form-data\AbstractMultipartFormDataCodec.cs:line 92
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.TypeSystem.ReflectionBased.ReflectionExtensions.CreateInstanceFrom[T](Type type, IEnumerable`1 propertyValues, ValueConverter`1 converter) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\TypeSystem\ReflectionBased\ReflectionExtensions.cs:line 123
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.TypeSystem.ReflectionBased.ReflectionBasedType.TryCreateInstance[T](IEnumerable`1 values, ValueConverter`1 converter, Object& result) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\TypeSystem\ReflectionBased\ReflectionBasedType.cs:line 63
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.TypeSystem.TypeBuilder.TrySetValue[T](IEnumerable`1 values, ValueConverter`1 converter) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\TypeSystem\TypeBuilder.cs:line 76
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Binding.KeyedValuesBinder.SetConstructorValue[TValue](IEnumerable`1 values, ValueConverter`1 converter) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Binding\KeyedValuesBinder.cs:line 97
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Binding.KeyedValuesBinder.SetProperty[TValue](String key, IEnumerable`1 values, ValueConverter`1 converter) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Binding\KeyedValuesBinder.cs:line 86
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Binding.KeyedValues`1.SetProperty(IObjectBinder binder) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Binding\KeyedValues`1.cs:line 36
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Codecs.CodecExtensions.<>c__DisplayClass8.<TryAssignKeyValues>b__7(KeyedValues kv) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Codecs\CodecExtensions.cs:line 38
            13-[2010-02-15 08:48:30Z] Error(0)    at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Collections.ObservableIterator`1.<GetEnumerator>d__0.MoveNext() in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Collections\ObservableIterator.cs:line 42
            13-[2010-02-15 08:48:30Z] Error(0)    at System.Linq.Enumerable.Count[TSource](IEnumerable`1 source)
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Codecs.CodecExtensions.TryAssignKeyValues(ICodec codec, IHttpEntity entity, IObjectBinder binder, Action`1 assigned, Action`1 failed) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Codecs\CodecExtensions.cs:line 36
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Codecs.CodecExtensions.<>c__DisplayClassb.<TryAssignKeyValues>b__a(Boolean result, IObjectBinder binder) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Codecs\CodecExtensions.cs:line 52
            13-[2010-02-15 08:48:30Z] Error(0)    at System.Linq.Enumerable.Aggregate[TSource,TAccumulate](IEnumerable`1 source, TAccumulate seed, Func`3 func)
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Codecs.CodecExtensions.TryAssignKeyValues(ICodec codec, IHttpEntity entity, IEnumerable`1 binders, Action`1 assigned, Action`1 failed) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Codecs\CodecExtensions.cs:line 52
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.OperationModel.Hydrators.RequestEntityReaderHydrator.TryAssignKeyedValues(IHttpEntity requestEntity, ICodec codec, Type codecType, IOperation operation) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\OperationModel\Hydrators\RequestEntityReaderHydrator.cs:line 88
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.OperationModel.Hydrators.RequestEntityReaderHydrator.<Process>d__8.MoveNext() in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\OperationModel\Hydrators\RequestEntityReaderHydrator.cs:line 56
            13-[2010-02-15 08:48:30Z] Error(0)    at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
            13-[2010-02-15 08:48:30Z] Error(0)    at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Pipeline.Contributors.AbstractOperationProcessing`2.ProcessOperations(ICommunicationContext context) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Pipeline\Contributors\AbstractOperationProcessing.cs:line 24
            13-[2010-02-15 08:48:30Z] Error(0)    at OpenRasta.Pipeline.PipelineRunner.ExecuteContributor(ICommunicationContext context, ContributorCall call) in c:\data\teamcity-agent\76e5d693a1510fce\src\core\OpenRasta\Pipeline\PipelineRunner.cs:line 172
        13-[2010-02-15 08:48:30Z] Stop(1) Exiting PipelineRunner
        13-[2010-02-15 08:48:30Z] Error(0) Aborting the pipeline and rendering the errors.
        13-[2010-02-15 08:48:30Z] Error(0) An error has occurred and the processing of the request has stopped.

Attachments

Change History

Changed 5 months ago by serialseb

  • description modified (diff)

Add/Change #132 (NullReferenceException in Mime Multipart Form)

Author


E-mail address and user name can be saved in the Preferences.


Action
as new
 
Note: See TracTickets for help on using tickets.