upgrade etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
upgrade etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

27 Temmuz 2011 Çarşamba

DotNetNuke 6 Resmi Olarak Duyuruldu!

DotNetNuke 6 sürümü aylar süren test aşamasından sonra son kullanıcılar ile buluşuyor. Yeni sürümde VB.NET altyapısından C# programlama diline geçiş söz konusu olacağından Türkiye'deki DotNetNuke kullanıcılarının geçişinin biraz sancılı olacağını düşünüyorum. Henüz production ortamındaki hiç bir sitede sürüm yükseltme işlemini gerçekleştirmedim. Ancak, yakın zamanda sürümleri yükseltmeyi planlıyorum.

DNN altyapısını kullanan site yöneticilerine tavsiyem eğer yeni sürümü denemek istiyorlarsa bunu ilk önce bir test ya da staging ortamında gerçekleştirmeleri, herşey yolunda giderse upgrade paketini production ortamına deploy etmeleri yönünde olacaktır.


13 Mart 2011 Pazar

DotNetNuke Sürüm Yükseltme Hatası ve Çözümü

Bazen DotNetNuke'yi bir üst sürüme yükseltmeye çalıştığınızda işler yolunda gibi gözükse de aşağıdakine benzer bir sorunla karşılaşabilirsiniz:


01.[NullReferenceException: Object reference not set to an instance of an object.]

02. DotNetNuke.UI.UserControls.TextEditor.Page_Load(Object sender, EventArgs e) +314

03.

04.[ModuleLoadException: An error has occurred.]

05. DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(String FriendlyMessage, Control UserCtrl, Exception exc) +291

06. DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(Control UserCtrl, Exception exc) +42

07. DotNetNuke.UI.UserControls.TextEditor.Page_Load(Object sender, EventArgs e) +504

08. System.Web.UI.Control.OnLoad(EventArgs e) +99

09. System.Web.UI.Control.LoadRecursive() +47

10. System.Web.UI.Control.LoadRecursive() +131

11. System.Web.UI.Control.LoadRecursive() +131

12. System.Web.UI.Control.LoadRecursive() +131

13. System.Web.UI.Control.LoadRecursive() +131

14. System.Web.UI.Control.LoadRecursive() +131

15. System.Web.UI.Control.LoadRecursive() +131

16. System.Web.UI.Control.LoadRecursive() +131

17. System.Web.UI.Control.LoadRecursive() +131

18. System.Web.UI.Control.LoadRecursive() +131

19. System.Web.UI.Control.LoadRecursive() +131

20. System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061

21.

22.[PageLoadException: An error has occurred.]

23. DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc, String URL) +351

24. DotNetNuke.Framework.PageBase.Page_Error(Object Source, EventArgs e) +377

25. System.Web.UI.TemplateControl.OnError(EventArgs e) +105

26. System.Web.UI.Page.HandleError(Exception e) +73

27. System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6944

28. System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +154

29. System.Web.UI.Page.ProcessRequest() +86

30. System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +18

31. System.Web.UI.Page.ProcessRequest(HttpContext context) +49

32. ASP.default_aspx.ProcessRequest(HttpContext context) +4

33. System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +154

34. System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +64


Sorun aslında upgrade işlemi sırasında bazı dosyaların düzgün olarak değiştirilmemesinden kaynaklanıyor. Bu sorun sizden değil paketteki bir eksiklikten kaynaklanıyor. DotNetNuke.UI.UserControls.TextEditor.Page_Load hatasından DotNetNuke ile ilgili diğer bloğumda da bahsettim ve çözümü paylaştım.

Yapmanız gereken tek şey, upgrade paketinin içeriğini yeniden sitenizdeki dosyalarla değiştirmek. Unutmamamız gereken noktalardan biri de...

Upgrade işleminden önce mutlaka yedek almak!


3 Mayıs 2010 Pazartesi

DotNetNuke 5.3.1'den DotNetNuke 5.4.1'e Yükseltme Yaparken

Bu sabah TRDNN sürümünü DNN 5.3.1'den DotNetNuke 5.4.1'e yükseltmeye çalışırken epey uğraşmama rağmen aşağıdaki hata mesajından bir türlü kurtulamadım.

Detaylar için 05.04.01.log dosyasına baktığımda ise aşağıdaki içerik ile karşılaştım.

System.Data.SqlClient.SqlException: String or binary data would be truncated.
The statement has been terminated.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at DotNetNuke.Data.SqlDataProvider.ExecuteADOScript(String SQL)
   at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)
  
  
/* ensure existing portal default languages have valid localization records */
DECLARE @PortalID int
DECLARE @DefaultLanguage nvarchar(10)
  
--Iterate through each portal
DECLARE Portals_Cursor CURSOR FOR
SELECT PortalID, DefaultLanguage
FROM         dbo.Portals
  
OPEN Portals_Cursor
--get first
FETCH NEXT FROM Portals_Cursor
into @PortalID,  @DefaultLanguage
WHILE @@FETCH_STATUS = 0
   BEGIN
       exec dbo.EnsureLocalizationExists @PortalID,@DefaultLanguage
  
       FETCH NEXT FROM Portals_Cursor
       into @PortalID,  @DefaultLanguage
  
   END
CLOSE Portals_Cursor
DEALLOCATE Portals_Cursor

TRDNN'de Türkçe Dil paketi etkin olduğu için bu sorunun gerçekleştiğini düşünüyorum. Çalışmalarım sürüyor, eğer sorunu düzeltebilirsem çözümü buradan paylaşacağım.

Ekleme & Sorun Çözüldü

Arkadaşlar saatler süren denemelerim sonunda 2 yöntem ile sorunu çözebildim. İlk yöntemi daha uzun süreceği ve kodda değişikliklik yapmanız gerektiği için anlatmayacağım.


İkinci yöntem için, Yönetim > Dil Kütüphanesi sayfasından sitenizin varsayılan dilini en-US yapmanız gerekiyor. Daha sonra upgrade işlemini başarılı bir şekilde tamamlayabilirsiniz.


Ek Bilgi

Her ne kadar güncelleme başarılı bir şekilde tamamlanmış olsa da varsayılan dili tekrar tr-TR yaptıktan sonra temanızdaki dil seçim düğmesine (Türk bayrağına) tıkladığınızda sorun devam edecek.

Sorunun 15 Mayıs 2010'da duyurulması planlanan DotNetNuke 5.4.2 sürümünde giderileceğini öğrendim.


5 Nisan 2010 Pazartesi

Platform ve Modül Güncellemeleri için Çalışma

Bugün epeydir fırsat bulamadığım DotNetNuke çalışmalarına kaldığım yerden devam ediyorum. Öncelikle DotNetNuke Kullanıcı Topluluğu için hazırladığım sitenin altyapısını DotNetNuke 5.2.2 sürümünden DotNetNuke 5.3.1'e yükseltdim.

Sürüm yükseltme işlemi sorunsuz bir şekilde gerçekleşti. DotNetNuke 4.6.2 sürümünden bu yana Upgrade süreci çok rahat oluyor. Bunda XMLMerge (kod birleştirme) tekniğinin çok büyük katkısı var.

Çekirdek platformda gerçekleştirdiğim güncellemelerden sonra, bu çekirdeğe entegre olan diğer modüllerin (şimdilik büyük bir bölümünü kullanmasam da) update paketlerinin mevcut olup olmadığını kontrol ettim.

Kontrollerim sırasında News Articles modülünün yeni bir sürümünün (ki bu yeni sürüme ait güncellemeyi kişisel blogda daha önce uygulamıştım) mevcut olduğunu görüp hemen update paketini indirdim.

Update süreci görünürde sancısız bir şekilde tamamlansa da arkaplanda ters giden birşeyler olmuş. Sisteme yeni bir yazı eklemeye çalıştığımda, garip bir şekilde Error Definition Msg kod adıyla bir hata mesajı aldım.

Be arkadaş, hata tanımlaması diyorsun ama yanında ne bir kod ne de kullanıcı dostu bir mesaj veriyorsun.

Öyle ya da böyle bu sorunu da çözdükten sonra (detayları yarın sabah fırından çıkacak yeni makalede bulacaksınız) kontrollerime devam edebilirim.

Ola ki sitede bir tuhaflık görüne, biline ki bu sorun benim çalışmalarımda kullandığım yöntemlerden ve bu yöntemlerin sonuçlarından kaynaklanabilitesi anlaşıla :)