[MAGNOLIA-3917] workflow: warning when proceeding with page activation Created: 09/Dec/11  Updated: 13/Mar/12  Resolved: 10/Jan/12

Status: Closed
Project: Magnolia
Component/s: None
Affects Version/s: 4.5
Fix Version/s: 4.5

Type: Bug Priority: Major
Reporter: Federico Grilli Assignee: Daniel Lipp
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
relation
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:

 Description   

The following warning can be observed when proceeding with activation of a node. It does not seem to affect basic activation functionality though.

2011-12-09 15:54:43,196 WARN  openwfe.org.engine.workitem.AttributeUtils        : smap2bean() bean of class 'info.magnolia.module.devicedetection.DeviceInfo' : failed to set value for field 'obile'. Skipped field.
2011-12-09 15:54:43,196 WARN  openwfe.org.engine.workitem.AttributeUtils        : because of
java.lang.NoSuchMethodException: info.magnolia.module.devicedetection.DeviceInfo.getObile()
	at java.lang.Class.getMethod(Class.java:1605)
	at openwfe.org.util.ReflectionUtils.getAttributeClass(ReflectionUtils.java:281)
	at openwfe.org.engine.workitem.AttributeUtils.smap2bean(AttributeUtils.java:143)
	at openwfe.org.engine.workitem.AttributeUtils.owfe2java(AttributeUtils.java:105)
	at openwfe.org.engine.workitem.AttributeUtils.map2java(AttributeUtils.java:234)
	at info.magnolia.module.workflow.WorkItemContext.getAttributes(WorkItemContext.java:91)
	at info.magnolia.context.AbstractContext.getAttributes(AbstractContext.java:171)
	at info.magnolia.context.AbstractContext.keySet(AbstractContext.java:287)
	at org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java:800)
	at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:298)
	at info.magnolia.commands.MgnlCommand.executePooledOrSynchronized(MgnlCommand.java:171)
	at info.magnolia.commands.MgnlCommand.execute(MgnlCommand.java:161)
	at info.magnolia.module.workflow.MgnlParticipant.consume(MgnlParticipant.java:132)
	at openwfe.org.embed.impl.engine.AbstractEmbeddedParticipant.dispatch(AbstractEmbeddedParticipant.java:154)
	at openwfe.org.engine.expressions.ParticipantExpression.dispatch(ParticipantExpression.java:474)
	at openwfe.org.engine.expressions.ParticipantExpression.regularDispatch(ParticipantExpression.java:489)
	at openwfe.org.engine.expressions.ParticipantExpression.apply(ParticipantExpression.java:430)
	at openwfe.org.engine.expressions.raw.RawExpression.apply(RawExpression.java:371)
	at openwfe.org.engine.expressions.state.NormalState.apply(NormalState.java:112)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.applyOrLaunch(SimpleExpressionPool.java:529)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.apply(SimpleExpressionPool.java:542)
	at openwfe.org.engine.expressions.SequentialFlowExpression.apply(SequentialFlowExpression.java:140)
	at openwfe.org.engine.expressions.state.NormalState.apply(NormalState.java:112)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.applyOrLaunch(SimpleExpressionPool.java:529)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.apply(SimpleExpressionPool.java:542)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.apply(SimpleExpressionPool.java:554)
	at openwfe.org.engine.expressions.SequenceExpression.reply(SequenceExpression.java:130)
	at openwfe.org.engine.expressions.state.NormalState.reply(NormalState.java:118)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.reply(SimpleExpressionPool.java:713)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.replyToParent(SimpleExpressionPool.java:644)
	at openwfe.org.engine.expressions.AbstractFlowExpression.replyToParent(AbstractFlowExpression.java:479)
	at openwfe.org.engine.expressions.IfExpression.applyConsequence(IfExpression.java:260)
	at openwfe.org.engine.expressions.IfExpression.reply(IfExpression.java:189)
	at openwfe.org.engine.expressions.state.NormalState.reply(NormalState.java:118)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.reply(SimpleExpressionPool.java:713)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.replyToParent(SimpleExpressionPool.java:644)
	at openwfe.org.engine.expressions.AbstractFlowExpression.replyToParent(AbstractFlowExpression.java:479)
	at openwfe.org.engine.expressions.AbstractFlowExpression.applyToParent(AbstractFlowExpression.java:494)
	at openwfe.org.engine.expressions.DefinedExpression.apply(DefinedExpression.java:97)
	at openwfe.org.engine.expressions.raw.RawExpression.apply(RawExpression.java:371)
	at openwfe.org.engine.expressions.state.NormalState.apply(NormalState.java:112)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.applyOrLaunch(SimpleExpressionPool.java:529)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.apply(SimpleExpressionPool.java:542)
	at openwfe.org.engine.expressions.IfExpression.apply(IfExpression.java:128)
	at openwfe.org.engine.expressions.raw.RawExpression.apply(RawExpression.java:371)
	at openwfe.org.engine.expressions.state.NormalState.apply(NormalState.java:112)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.applyOrLaunch(SimpleExpressionPool.java:529)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.apply(SimpleExpressionPool.java:542)
	at openwfe.org.engine.expressions.SequentialFlowExpression.apply(SequentialFlowExpression.java:140)
	at openwfe.org.engine.expressions.AbstractFlowExpression.launch(AbstractFlowExpression.java:163)
	at openwfe.org.engine.expressions.raw.RawExpression.launch(RawExpression.java:383)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.applyOrLaunch(SimpleExpressionPool.java:527)
	at openwfe.org.engine.impl.expool.SimpleExpressionPool.launch(SimpleExpressionPool.java:565)
	at openwfe.org.engine.impl.launch.SimpleXmlLauncher$1.run(SimpleXmlLauncher.java:453)


 Comments   
Comment by Daniel Lipp [ 14/Dec/11 ]

OpenWFE's AttributeUtils tries to resolve attributeName by stripping first three letters of getter: in case of the mobile-attribute the getter is called isMobile() so it will be looking for an attribute called "obile".

Comment by Daniel Lipp [ 14/Dec/11 ]

only related in the sense that both will require adapting openWFE sources so they should be bundle together

Comment by Jan Haderka [ 14/Dec/11 ]

Following code change in openwfe.org.engine.workitem.AttributeUtils should take care of the problem.

412,413c412
<             String methodName = getAndSet[0].getName();
<             final String attributeName = methodName.substring(methodName.startsWith("is") ? 2 :3);
---
>             final String attributeName = getAndSet[0].getName().substring(3);
Comment by Daniel Lipp [ 16/Dec/11 ]

Although the issue is "solved" by r52779 (DeviceInfo no longer Serializable) Jan's recommended patch should still be applied as we might run into that issue again.

Comment by Eric Hechinger [ 13/Mar/12 ]

Was also able to activate a content with the following comment's: ورة تجريبية"

Generated at Mon Feb 12 03:50:55 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.