sqlite: adding content to pages

This is the place to report bugs and get support. When posting in this forum, please always provide as much detail as possible.

Please do not report problems with a custom build or custom code in this forum. If you are producing your own build from the source code and have problems or questions, ask in the developer forum, do not report it as a bug.

This is the place to report bugs and get support

When posting in this forum, please try to provide as many relevant details as possible. Particularly the following:

  • What operating system were you running when the bug appeared?
  • What database platform is your site using?
  • What version of mojoPortal are you running?
  • What version of .NET do you use?
  • What steps are necessary to reproduce the issue? Compare expected results vs actual results.
Please do not report problems with a custom build or custom code in this forum. If you are producing your own build from the source code and have problems or questions, ask in the developer forum.
This thread is closed to new posts. You must sign in to post in the forums.
8/13/2007 5:36:44 PM
Gravatar
Total Posts 8

sqlite: adding content to pages

hi again ;)

I just tried 2.3.3.4 with SQLite and now I am able to create pages, but am stuck when I want to add content to any of the pages. when clicking "create new content" basically nothing happens ... the exception is listed below.


2007-08-14 00:26:38,640 [3548] ERROR mojoPortal.Web.Global [(null)] - System.Web.HttpUnhandledException: Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.InvalidCastException: Specified cast is not valid.
at mojoPortal.Data.SqliteHelper.ExecuteNonQuery(IDbConnection connection, String commandText, IDataParameter[] commandParameters)
at mojoPortal.Data.SqliteHelper.ExecuteNonQuery(String connectionString, String commandText, IDataParameter[] parms)
at mojoPortal.Data.dbPortal.Module_PageModuleUpdate(Int32 moduleID, Int32 pageID, String paneName, Int32 moduleOrder, DateTime publishBeginDate, DateTime publishEndDate)
at mojoPortal.Data.dbPortal.Module_Publish(Int32 moduleID, Int32 pageID, String paneName, Int32 moduleOrder, DateTime publishBeginDate, DateTime publishEndDate)
at mojoPortal.Business.Module.Publish(Int32 moduleID, Int32 pageID, String paneName, Int32 moduleOrder, DateTime publishBeginDate, DateTime publishEndDate)
at mojoPortal.Web.AdminUI.ContentManagerPage.grdPages_RowUpdating(Object sender, GridViewUpdateEventArgs e)
at System.Web.UI.WebControls.GridView.OnRowUpdating(GridViewUpdateEventArgs e)
at System.Web.UI.WebControls.GridView.HandleUpdate(GridViewRow row, Int32 rowIndex, Boolean causesValidation)
at System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup)
at System.Web.UI.WebControls.GridView.OnBubbleEvent(Object source, EventArgs e)
at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)
at System.Web.UI.WebControls.GridViewRow.OnBubbleEvent(Object source, EventArgs e)
at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)
at System.Web.UI.WebControls.Button.OnCommand(CommandEventArgs e)
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
--- End of inner exception stack trace ---
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at ASP.admin_contentmanager_aspx.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

regards, chris

8/13/2007 5:54:54 PM
Gravatar
Total Posts 18439

Re: sqlite: adding content to pages

Hi Chris,

I just tried it here and its working for me. Can you tell me the exact steps to produce this? Which feature are you adding to the page? Are you adding it using the pencil icon from the page itself or using the Content Manager > Publish? I tried both ways and it worked for me.

Joe

8/14/2007 1:50:55 PM
Gravatar
Total Posts 8

Re: sqlite: adding content to pages

hi joe,

so, I know what the problem of the not appearing content was now: the date/time settings that are saved in the "publish begin" field when adding new content apparently doesn't correspond to my server time, when setting the date one day to the future on the server I see the content, so that's not too bad for now. might be a locale / timezone issue, I'll look at that ...

However, I found 2 new problems now:

1) this seems to be a bug for me: clicking the pencil for the "categories" in the blog module returns the exception "DataBinding: 'System.Data.Common.DbDataRecord' does not contain a property with the name 'CategoryID'."

2) updating any data in the publish/delete section of the content manager returns an InvalidCastException. Might this have to do with wrong locale settings again (my pc is german locale but the date is saved in english format) ? I will take a look at this one too ...

 

br, chris

 

8/15/2007 1:56:54 PM
Gravatar
Total Posts 18439

Re: sqlite: adding content to pages

Hi Chris,

I just updated the download for Sqlite. Can you try the new version and see if it resolves the issues? The only file you need to replace is mojoPortal.Data.dll

Thanks,

Joe

8/17/2007 6:43:12 AM
Gravatar
Total Posts 8

Re: sqlite: adding content to pages

hi,

i'm afraid this still doesn't work with the new download - i get the exact same errors.

however, the mojoportal.Data.dll you mentioned did not change since the official release, the only update i can see in the bin-folder is to Mono.Data.Sqlite.dll. *wonder* ?

br, chris

 

8/17/2007 7:03:35 AM
Gravatar
Total Posts 18439

Re: sqlite: adding content to pages

Hi Chris,

I could have sworn I updated the right file but in looking it appears you are right. I must have copied the Mono.Data.Sqlite.dll instead of mojoPortal.Data.dll (big oops!)

I've corrected the problem and uploaded a new 2-2-3-4-c file for Sqlite, this time with the new mojoPortal.Data.dll

Please let me know if this solves it.

Thanks,

Joe

8/17/2007 7:25:37 AM
Gravatar
Total Posts 8

Re: sqlite: adding content to pages

hi again,

problem #2 is solved with this update, thanks :)

problem #1 still exists: when trying to add / edit the "categories" section for a blog i'm still getting this exception:

System.Web.HttpException: DataBinding: 'System.Data.Common.DbDataRecord' does not contain a property with the name 'CategoryID'.

I tried it also with an empty sqlite db file just in case something was messed up with already existing data, but that didn't help either.

thanks for your efforts,

chris

 

 

8/17/2007 7:33:14 AM
Gravatar
Total Posts 18439

Re: sqlite: adding content to pages

Hi Chris,

I tried to replicate this bug but its working for me. Anything you can tell me about your environment that might be different than mine? localization? Are you using Firefox or IE? Anything you can think of?

If you just add a category while in the BlogEdit.aspx page without clicking the Edit Categories link does it add a category?

Thanks,

Joe

 

8/17/2007 8:58:30 AM
Gravatar
Total Posts 18439

Re: sqlite: adding content to pages

Hi Chris,

After a while I started seeing this bug, not sure why it didn't happen all along for me but started later. Its kind of weird and looks like a bug either in Mono.Data.Sqlite or in sqlite itself. In stepping therogh the code I found that the field names were coming through like bc.CategoryID instead of just CategoryID. It was seeing the table alias prefix as part of the field name which it should not do. I fixed it by SELECT bc.CategoryID As CategoryID which should not have been needed but seemed to fix it. It is possible this bug will appear in other places where table alias prefixes are used in select statements.

Can you try the new 2-2-3-4-d sqlite download? Again only changes in mojoPortal.Data.dll

Thanks,

Joe

8/20/2007 11:36:37 AM
Gravatar
Total Posts 8

Re: sqlite: adding content to pages

Hi Joe,

Sorry for the late reply, I was off during the weekend.

Yup, adding categories now works with the d-version.
BUT when saving a blog post with any category item checked the bug is still there (or is it a new one ? looks slightly different).

br, chris

 

 

[HttpException (0x80004005): DataBinding: 'System.Data.Common.DbDataRecord' does not contain a property with the name 'Category'.]
System.Web.UI.DataBinder.GetPropertyValue(Object container, String propName) +197
System.Web.UI.DataBinder.Eval(Object container, String[] expressionParts) +79
System.Web.UI.DataBinder.Eval(Object container, String expression) +108
ASP.modules_blogmodule_ascx.__DataBinding__control4(Object sender, EventArgs e) +130
System.Web.UI.Control.OnDataBinding(EventArgs e) +99
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +206
System.Web.UI.Control.DataBind() +12
System.Web.UI.Control.DataBindChildren() +216
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +216
System.Web.UI.Control.DataBind() +12
System.Web.UI.WebControls.Repeater.CreateItem(Int32 itemIndex, ListItemType itemType, Boolean dataBind, Object dataItem) +130
System.Web.UI.WebControls.Repeater.CreateControlHierarchy(Boolean useDataSource) +454
System.Web.UI.WebControls.Repeater.OnDataBinding(EventArgs e) +53
System.Web.UI.WebControls.Repeater.DataBind() +72
mojoPortal.Web.BlogUI.BlogModule.PopulateNavigation() +1139
mojoPortal.Web.BlogUI.BlogModule.Page_Load(Object sender, EventArgs e) +275
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +47
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061

 

8/20/2007 11:39:37 AM
Gravatar
Total Posts 8

Re: sqlite: adding content to pages

one additional note:

apparently the data is saved correctly to the sqlite db (i checked with sqlite admin), and the error is happening when only displaying the blog page ...

hope this helps.

br, chris

8/20/2007 1:01:32 PM
Gravatar
Total Posts 18439

Re: sqlite: adding content to pages

Hi Chris,

This is apparently more of the same bug which must be in Mono.Data.Sqlite or insqlite itself.

Apparently when using a select statement like:

SELECT bc.Category, ...more fields.

It sees the column name as bc.Category instead of just Category as it should so it gives a column not found error during data binding because it can't find the Category column.

The workaround solution is to alias the column to its correct name like:

SELECT bc.Category As Category,...more fields

The problem is I'm pretty sure there are a lot of places in the code where table prefixes are used so a lot of places where this bug could pop up. Strange that its happening only in the blog. Best I can do is set aside some time to try and review as much of the code as possible looking for these issues and putting the workaround in place. Or try to figure out where the actual bug is further down the stack.

Joe

You must sign in to post in the forums. This thread is closed to new posts.