MessageNotUnderstood:
MaMalformedRequestError>>repositoryController:
Hilaire Fernandes
hilaire at ofset.org
Wed Dec 12 11:26:28 UTC 2007
Thanks for your advices, it is helpful.
In this place of the application I am not using read strategy.
In other place of the application where I am suing read strategy I don't
have the problem, so may be it is a problem underneath.
In the Magma client I only have the modification to
StrikeFont>>maAsStorageObject so TextMorph are persisted correctly. I
apply this change both to client and server :
StrikeFont>>maAsStorageObject
^ DiskProxy
global: #StrikeFont selector: #familyName:pointSize:emphasized:
args: { self familyName. self pointSize. self emphasis }
Chris, I went until the MaTcp...>>submit: method, but I don't really
understand where to look.
From the MaCommitPackage, the MagmaCollectionChanges looks like:
collectionOid: 4112481
changes: a Dictionary(#added->an IdentityDictionary(66543->an
OrderedCollection(#(250776336) #(0) #(10625597) an IFILevelCollection()
#(1)) ) #removed->an IdentityDictionary() )
isNewCollection: false
collection: a MagmaCollection
The problem happens when I add an object to a MagmaCollection
IFIDbSession commit: [pedagogicalMoments add: moment]
In this commit, TextMorph persitency occurs.
I repeat this code is working when Magma is in local mode.
In the client, MagmaRepositoryController basicNew protocol
returns, where only IFICompetencyCollection is new (the server has the
same protocol size):
{LargePositiveInteger . MaSerializedGraphBuffer . MaByteObjectBuffer .
MaVariableWordBuffer . MaVariableObjectBuffer . MaFixedObjectBuffer .
MaStorageObjectBuffer . MaVariableBuffer .
MaLargeCollectionSegmentRequest . MaLoadProgressRequest .
MaRefreshSegmentRequest . MaDownloadCodeRequest .
MaLoadFromReaderRequest . MaReaderTrunkRequest .
MaAbortTransactionRequest . MaRepositoryConnectionRequest .
MaWriteRequest . MagmaPathNameRequest . MaCloseRepositoryRequest .
MaLargeCollectionSizeRequest . MaAbstractReadRequest .
MaTransactionRequest . MagmaIdRequest . MaAnchorRequest .
MaReadRequest . MaKeyIntervalInfoRequest . MaSegmentByIndexRequest .
MaRepositoryDisconnectRequest . MaCommitPackage . MaBasicReadStrategy .
MaReadStrategy . MagmaCollectionSegment . MaRefreshViewResult .
MaReadResult . MagmaLargeCollectionSegment . MaCommitResult .
MagmaCollectionReaderSegment . MaFailedCommitResult . MagmaId . UUID .
MaFailedCommitResult . MagmaClientConnection . MagmaCommitConflict .
Fraction . MaClause . MaExpression . MaQueryTrunkClause . MaQueryTrunk .
MagmaSet . IFICompetencyCollection . MagmaCollection .
IdentityDictionary . MagmaIndexDescription . MagmaArrayChanges .
MagmaCollectionChanges . Association . MaChangedKeySpecification .
MaEnvironmentError . MaObjectSerializationUserError .
MaUnreadableRecoveryRecord . MagmaEquivalentObjectNotInCollection .
MagmaSoftwareError . MaNetworkError . MagmaSessionLost .
MagmaEnvironmentError . MaObjectSerializationSecurityViolation .
MaHashIndexUserError . MagmaUserError . MagmaInvalidIndexObject .
MagmaCommitError . MaClientServerUserError . MagmaCorruptionError .
MaSecurityViolation . MagmaGarbageCollectedObject .
MagmaDuplicateObjectInCollection . MaSoftwareError . MaCorruptionError .
MagmaInvalidOid . MaUserError . MaMalformedRequestError .
MaObjectSerializationSoftwareError . MaSpecialCollectionsSoftwareError}
Le mardi 11 décembre 2007 à 23:06 -0500, Chris Muller a écrit :
> Hi Hilaire, a the MalformedRequest error is telling you the server
> received a request from your client that it could not properly
> materialize. Specifically, it looks like your Magma client has
> attempted to extend the Magma #protocol ("class id not found"). Are
> you running a modified Magma client?
>
> It does look like the error-handling code incorrectly passes the
> MalformedRequestError Exception AS the request which is, of course, a
> bug. I will fix that, so that it kick the error back to your client
> as it should.
>
> But I know you are interested in the cause of the error itself. When
> you get this error, you should break into your client and look in teh
> debugger at the request it passed to the server. Look at ALL the
> arguments and find which object whose class is not included in this
> Array:
>
> MagmaRepositoryController basicNew protocol
>
> THAT is the one that is causing the problem.
>
> - Chris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Ceci est une partie de message
=?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
Url : http://lists.squeakfoundation.org/pipermail/magma/attachments/20071212/d58901fe/attachment-0001.pgp
More information about the Magma
mailing list