119
Views
12
Comments
Solved
[Time Zone]  Error: "A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)"
time-zone
Reactive icon
Forge asset by André Vieira
Application Type
Traditional Web
Service Studio Version
11.14.1 (Build 54682)
Platform Version
11.11.2 (Build 29611)

Good afternoon,

I created a Service application with a service module (TimezoneConverter) using this component as a dependency.

When I use one of the actions from that service module in a test application and try to access the screen, it's throwing: "Internal error". In Service Center, the error is: "A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)".

When I debug the service module, it stops in the GetIANATimezone action. The input I'm using is "Europe/Amsterdam". I also tried "Europe/Lisbon".

I'm using the action as a function in a Table Records.


Stack:
A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)
at ssTimeZoneConverter.RssExtensionTimeZone_Lib.MssGetIANATimeZone(HeContext heContext, String inParamIANATimezone, IRecord& outParamTimeZone)
at ssTimeZoneConverter.Actions.ActionGetIANAAmsterdamTimeZoneId(HeContext heContext, String& outParamTimeZoneId)
at ssTimeZoneConverter.Actions.ActionConvertDateTime_UTCToAmsterdam(HeContext heContext, DateTime inParamDateTimeUTC, DateTime& outParamDateTime)
at ssTestingTimezone.RsseSpaceTimeZoneConverter.MssConvertDateTime_UTCToAmsterdam(HeContext heContext, DateTime inParamDateTimeUTC, DateTime& outParamDateTime)
at ssTestingTimezone.Functions.rssespacetimezoneconverter_ActionConvertDateTime_UTCToAmsterdam(HeContext heContext, DateTime inParamDateTimeUTC)
at ssTestingTimezone.Flows.FlowMainFlow.ScrnTests.expression42()
at ASP.tests_aspx.__DataBind__control66(Object sender, EventArgs e)
at System.Web.UI.Control.OnDataBinding(EventArgs e)
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.PlaceHolder.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.PlaceHolder.DataBind()
at OutSystems.HubEdition.WebWidgets.HyperLink.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.HyperLink.DataBind()
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.OSDataGridTableCell.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.OSDataGridTableCell.DataBind()
at OutSystems.HubEdition.WebWidgets.OSDataGridItem.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at System.Web.UI.WebControls.DataGrid.CreateItem(Int32 itemIndex, Int32 dataSourceIndex, ListItemType itemType, Boolean dataBind, Object dataItem, DataGridColumn[] columns, TableRowCollection rows, PagedDataSource pagedDataSource)
at System.Web.UI.WebControls.DataGrid.CreateControlHierarchy(Boolean useDataSource)
at OutSystems.HubEdition.WebWidgets.OSDataGrid.CreateControlHierarchy(Boolean useDataSource)
at System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e)
at OutSystems.HubEdition.WebWidgets.OSDataGrid.OnDataBinding(EventArgs e)
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.Container.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Container.DataBind()
at OutSystems.HubEdition.WebWidgets.OSUserControl.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.OSUserControl.DataBind()
at OutSystems.HubEdition.WebWidgets.OSUserControl.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.OSUserControl.DataBind()
at OutSystems.HubEdition.WebWidgets.Form.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.Body.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.OSPage.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at OutSystems.HubEdition.WebWidgets.OSPage.DataBind()
at ssTestingTimezone.Flows.FlowMainFlow.ScrnTests.DataBind()
at ssTestingTimezone.Flows.FlowMainFlow.ScrnTests.Page_Load(Object sender, EventArgs e)
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

2015-09-11 16-23-25
Filipe Figueiredo
Staff
Solution

Hi Vanessa,

What if you don't use a Service Module? Would the outcome be the same?

What Stuart said previously about the signed assemblies makes sense so if the actions work outside a Service Module that means that the issue would most likely be with the Module Type.

Regards,

Filipe

2015-09-11 16-23-25
Filipe Figueiredo
Staff

Hi Vanessa!

Mind if I ask why the need of encapsulating the timezone extension actions within a Service Action?

Also, could you share those test modules you are talking about to see if I can replicate the behavior on my side and help you out?

Thanks.

2025-11-13 16-57-56
Vanessa Silva

Hi Filipe,

I'm using The GetIANATimezoneId to return the TimezoneId and I need to save and show the time in Amesterdam timezone in several applications in the environment. Me and my colleague thought that encapsulate in a service application was the best way to do it.

For the Service module, I have this:


All the other actions to convert are basically like the one below but output is in time or date.


Thank you

TestingTimezone_v13.oml
2015-09-11 16-23-25
Filipe Figueiredo
Staff

Thanks for sharing Vanessa.

I've made a couple of tests myself and never got into trouble. As you can see on the screenshot below the screen is converting and displaying the dates as expected.



Are you using the latest version of the component?

If so, did this start to happen after any particular event? A platform upgrade or something else? Does it also happen if you try in another environment?

I would check also the usual stuff, like outdated references, and would consider rebuilding the Timezone extension and running a solution afterward to guarantee consistency.

Looking forward to hearing back from you.

Filipe

2025-11-13 16-57-56
Vanessa Silva

Hi Filipe,

When I changed the value of the Site Property 'EnableTimeConversion' to true and start using the 'TimeZone' extension functions, it started retrieving the error.
I tried on my personal environment and it worked well.


Best regards,

Vanessa Silva

2015-09-11 16-23-25
Filipe Figueiredo
Staff

Hi Vanessa.

Well, if it worked well on your Personal Environment and not on your existing environment it's probably because there's some problem with your existing codebase. Did you manage to check the above points I've mentioned previously?

Thanks.

2025-11-13 16-57-56
Vanessa Silva

Hi Filipe,

This happened once I started working in the environment.

I updated the component, and the error continued. 

Thank you and best regards, 

Vanessa Silva

2015-09-11 16-23-25
Filipe Figueiredo
Staff

Hi Vanessa.

Curious if you managed to overcome this situation and if so, any chance you can share what the issue was?

Thanks!

2025-11-13 16-57-56
Vanessa Silva

Hi Filipe,

Still trying to solve it.

2024-11-07 03-28-42
Stuart Harris
Champion

Hi Vanessa,

This seems very strange.  I recommend lodging a support issue with OutSystems.

The error  "A strongly-named assembly is required." appears when a strongly-named .NET assembly attempts to call a .NET assembly that is not strongly-named.  A strong-name for an assembly is applied by signing the assembly.

This indicates that the service module is somehow being signed, but the extension is not signed. I did not think OutSystems signed assemblies.  This is why I recommend OutSystems support.

Kind regards,

Stuart

2025-11-13 16-57-56
Vanessa Silva

Hi Stuart,

I think that is strange too, because I've used this component in past projects, and it worked well.

I started by opening a ticket in OutSystems Support. 

This is not a component supported by them, so they said to talk to the one who made the component. 

They also asked me to send them my logs, which I did. I am waiting for a response from them.

Best regards,

Vanessa

2015-09-11 16-23-25
Filipe Figueiredo
Staff
Solution

Hi Vanessa,

What if you don't use a Service Module? Would the outcome be the same?

What Stuart said previously about the signed assemblies makes sense so if the actions work outside a Service Module that means that the issue would most likely be with the Module Type.

Regards,

Filipe

2025-11-13 16-57-56
Vanessa Silva

Hi Filipe,

I followed your suggestion (used a Blank Module) and it worked!

Thank you both for the help!

Best regards,

Vanessa Silva

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.