Sunday, May 30, 2004

CSDN_C#:Web Service exception handling
Handling and Throwing Exceptions in XML Web Services
3 Leaf: Web Services Resources
Encrypting one parameter on a WebMethod with WSE
Building Robust and Reliable Software
Web Services Developer Center: Web Services Enhancements (WSE): Programming with Web Services Enhancements 2.0 (Web Services Enhancements (WSE) Technical Articles)
Undocumented Delphi 8 property access specifiers Part 1
Integrating Help in Delphi 8
The Oracle at Delphi: Delphi Win32: Why packages are better than libraries.

Thursday, May 27, 2004

Wednesday, May 26, 2004

Some code shows how to manage transaction in multiple database system


we create a table test_log in remote database, and a procedure test_log_pkg.insert_log to insert log into this table

create or replace package body test_log_pkg is
procedure insert_log(pvs_log in varchar2) is
begin
insert into test_log values (pvs_log);
end;
end test_log_pkg;


we create a procedure test_dblink_pkg.insert_remote_log in local database which invoke the insert_log in remote database by database link. we added PRAGMA AUTONOMOUS_TRANSACTION in declaration section, and commit the insert at the end.

create or replace package body test_dblink_pkg is

procedure insert_remote_log(pvs_log IN varchar2) is
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
insert_log@remote_db(pvs_log);
commit;
END;

end test_link_pkg;

then we create a table test_log in local database, and we create a test procedure which insert log into test_log in local database, and
invoke insert_remote_log to insert log into test_log in remote database, at the end, we rollback all of operations.

procedure test(pvs_log IN varchar2) is
BEGIN
insert into test_log values(pvs_log);
insert_remote_log(pvs_log);
rollback;
END;

after we run test, test_log in remote database has a new record, but test_log in local database has nothing.
It shows that the transaction for local database is rolled back, but the transaction for remote database is commited




DBAsupport.com : Oracle 9i Central : Autonomous and Distributed Transactions in Oracle 8i/9i
DEV310: Top 10 Tricks for a Killer ASP.NET Web Application

Wednesday, May 12, 2004

Sunday, April 18, 2004

Making web forms easy with InfoPath and "InfoView"

Nice idea, the tools to converting the InfoPath XML form to be ASP.NET web form.
ASP.NET and Struts: Web Application Architectures

Good article, seems like the author prefer the ASP.net, but I have to say the struts is more suitable for large web site since the structure of java struts could help the developer be able to have a better feel to the entire sytem.
ObjectSpaces and Whidbey

ObjectSpace will be come later than Whidbey, the reason seems like that ObjectSpace use some new feature in WinFS, such as a new Query syntax(hybrid-SQL-and-XPath),
is that means ObjectSpace only for Sql Server because WinFS use Sql server
FTPOnline - VSLive! SF 2004 - Model Apps More Effectively

It is hard to keep the code and Model in synchronization. MS case tools is going to make it easy.
Unit Testing a Windows Forms or Console Application

Separating the business logic code with Winform units is the key

Friday, April 09, 2004

Java Studio Creator: An IDE to Create Web Applications

The JSF web developement IDE from sun, is it as easy as Asp.net?

Monday, April 05, 2004

Essential Delphi 8 for .NET

There are a preview chapter available for downloading.
Something I got from this charper,
1. Initialization in D.net become the Static Class Method and called from Class Constructors
2. sets in D.net become the enumeration class (marked as sealed) that inherits from System.Enum.
3. the difference between record with methods and class in D.net is the way the use memory, the record is in stack and the class is in heap, so the record is a little bit more efficient.
4. StringBuilder is for increasing the performance of string concatenation. it is much faster than common string concatenation.
5. the Direct type cast became more restrictive in D.net. Integer (anObject) is no longer allowed
6. protected symbols defined in another unit are accessible only within the same assembly/package, but not across package boundary
7. ECO framework use Class Helper too, the Class Helper in D.net looks like the partial class in c#
8. published property in D.net become the BrowsableAttribute in CLR
9. Any class needing resource clean-up should implement the Dispose method of the IDisposable interface,
and add the 'using' clause in c#. the VM will free the object and resource in the the score of 'using' clause, this way eliminate the delay of GC.
in D.net, the Destroy() method becomes an implementation to Dispose. nice
10. However the Delphi 8 compiler cannot impose the presence of a specific metaclass for classes not
compiled by Delphi but imported from assemblies written in other languages.


Saturday, April 03, 2004

Oracle Technical Interview Questions Answered - Part1

A Oracle DBA or developer must read this article
XP flow Chart
WinForms is dead misconceptions are misplaced

how soon will you have 100% Longhorn coverage? Here's my guess: 2012 to 2014. so learning the winform will keep your job up to 10 years.
MSDN TV: Windows Forms and Non-Rectangular Applications

Friday, April 02, 2004

The .NET Show: Longhorn and WinFS

WinFS intergrated the Hiberarchy Files System, Relational Database and Rank based web search engine togeather, it sounds excited, but I am not sure if M$ could make the entire system easy to use, even for common people who has no IT knowledge.
How to design good APIs and Why they matter

Good article, the author wrote the effective java before,
CS CODEDOM Parser
I might use CodeDom sometime in the furture, just keep this link as reference

Thursday, April 01, 2004

The Code Project - XButton control for .NET - C# Controls

there are some GDI+ function in the source code, such as making the gradient effect
java thread model

A chinese article about the synchronized, DCL, lacyload, it introduces some important idea to all of developers who even are not java guy