Bagikan melalui


Penanganan Kesalahan (Folder Sampel Server BizTalk)

Tujuan dari sampel ini adalah untuk membangun fungsionalitas penanganan kesalahan untuk aplikasi perutean berbasis konten (CBR).

Prasyarat

Untuk menjalankan sampel, disarankan agar Anda menginstal Microsoft Office InfoPath 2010 atau yang lebih baru. Anda dapat menjalankan sampel tanpa menggunakan InfoPath, tetapi dalam hal ini Anda tidak dapat melihat laporan pengeluaran dan pengiriman laporan pengeluaran melalui adaptor HTTP.

Apa yang Dilakukan Sampel Ini

Sampel mengimplementasikan bagian dari sistem pemrosesan laporan pengeluaran. Secara khusus, sampel ini melakukan hal berikut:

  1. Mendefinisikan skema laporan pengeluaran yang berisi informasi tentang laporan pengeluaran dan pengirim individu termasuk nama departemen.

  2. Menyediakan pengiriman laporan pengeluaran melalui direktori atau melalui layanan Web menggunakan InfoPath.

  3. Mempromosikan properti Departemen dan correlationID dalam dokumen pesan sehingga dapat digunakan dalam filter port untuk mengontrol perutean.

  4. Merutekan laporan pengeluaran milik departemen Pemasaran ke file di direktori, mensimulasikan pengiriman ke sistem back-end departemen.

  5. Menghasilkan pesan gagal untuk laporan pengeluaran milik departemen selain Pemasaran. Pesan yang gagal mencakup informasi tentang kesalahan termasuk kode kesalahan dan deskripsi kesalahan.

  6. Merutekan pesan yang gagal ke penerima manusia (pengguna bisnis atau operator aplikasi) untuk koreksi dan pengiriman ulang.

  7. Merutekan laporan pengeluaran yang dikirim ulang berdasarkan departemen seperti yang dijelaskan di atas.

    Sebagian besar pekerjaan ini dilakukan melalui jadwal orkestrasi BizTalk.

Bagaimana Sampel Ini Dirancang dan Mengapa

Desain ini bergantung pada alur KIRIM dan terima XML default, promosi properti, filter langganan, dan jadwal orkestrasi dalam BizTalk Server untuk merutekan pesan. Elemen desain dan pembenarannya tercantum dalam tabel berikut.

Elemen Desain Alasan dipilih
Alur penerimaAN XML default - Alur XMLReceive mendukung promosi properti; alur PassThruReceive tidak.
- Pesan masuk sudah dalam format XML dan tidak memerlukan pemrosesan di luar pembbongkaran dasar dan resolusi pihak.
Perutean untuk pesan yang gagal - Menerima port menangguhkan pesan yang gagal dan menghasilkan pengakuan negatif secara default. Saat perutean diaktifkan BizTalk Server mencoba merutekan pesan apa pun yang gagal diproses ke aplikasi berlangganan (seperti port penerima lain atau jadwal orkestrasi).
Promosi properti - BizTalk Server bergantung pada bidang properti untuk melakukan perutean. Bidang khusus digunakan oleh orkestrasi dan tidak dapat digunakan untuk perutean.
Filter langganan - Filter langganan melakukan perutean dengan menangkap pesan yang memenuhi satu atau beberapa kriteria berdasarkan bidang properti.
Jadwal orkestrasi BizTalk - Memberikan kesempatan untuk menambahkan informasi ke pesan yang gagal.
- Memungkinkan perutean pesan yang gagal ke lokasi khusus untuk intervensi manusia.
- Proses mengirim ulang laporan pengeluaran.
XMLTransmit - Melakukan perakitan dasar pesan XML keluar. Alur PassThruTransmit tidak memberikan dukungan tambahan.

Tempat Menemukan Sampel Ini

Sampel ini terletak di <Samples Path>\Messaging\ErrorHandling\.

Tabel berikut berisi daftar file untuk sampel ini.

File Deskripsi
Cleanup.bat Digunakan untuk membatalkan penyebaran rakitan dan menghapusnya dari cache perakitan global.

Menghapus port kirim dan terima.

Menghapus direktori virtual Internet Information Services (IIS) sesuai kebutuhan.
ErrorHandling.sln File solusi Visual Studio untuk sampel.
ErrorHandlingBinding.xml Mengikat file untuk sampel.
Setup.bat Digunakan untuk membangun dan menginisialisasi sampel ini.
Laporan Pengeluaran – John Doe.xml Contoh laporan pengeluaran dokumen InfoPath.
Laporan Pengeluaran Tidak Valid – John Doe.xml Contoh laporan pengeluaran dokumen InfoPath dengan data yang tidak valid di dalamnya.
Dalam folder ErrorHandler:

ErrorHandler.btproj
Proyek BizTalk untuk orkestrasi.
Dalam folder ErrorHandler:

Kirim UlangLogic.odx
Orkestrasi yang berlangganan pesan yang gagal, mengirimkannya ke penerima manusia untuk diperbaiki, lalu mengirim ulang pesan yang diperbaiki kembali ke server untuk perutean.
Dalam folder ErrorHandler:

SuspendMessage.odx
Orkestrasi yang digunakan untuk menangguhkan pesan yang tidak dapat diproses dalam orkestrasi penanganan kesalahan.
Di folder InfoPathForms:

Laporan Pengeluaran.xsn

Laporan Pengeluaran - Resubmit.xsn
Formulir dan formulir InfoPath laporan pengeluaran yang digunakan untuk menampilkan dan mengirim ulang pesan yang gagal.
Di folder PipelinesAndSchemas:

ExpenseReportSchema.xsd
Skema XML untuk dokumen laporan pengeluaran.
Di folder PipelinesAndSchemas:

PipelinesAndSchemas.btproj
Proyek BizTalk untuk sampel.
Di folder PipelinesAndSchemas:

PropertySchema.xsd
Skema properti untuk sampel.

Cara Menggunakan Sampel Ini

Sampel ini menyediakan titik awal untuk membuat prosedur penanganan kesalahan Anda sendiri.

Membangun dan Menginisialisasi Sampel Ini

Untuk membuat dan menginisialisasi sampel Buat

  1. Di jendela perintah, navigasikan ke folder berikut:

    < Samples Path > \Messaging\ErrorHandling

  2. Jalankan Setup.bat, yang melakukan tindakan berikut:

    • Membuat tiga folder: ExpenseReportIn, ExpenseReportOut, dan ResubmittedReportIn di bawah jalur berikut:

      < Samples Path > \Messaging\ErrorHandling

    • Menyalin dan menerbitkan formulir InfoPath Expense Report.xsn dan Expense Report – Resubmit.xsn ke dalam folder C:\Temp\InfoPathForms.

    • Kompilasi proyek Visual Studio untuk sampel ini.

    • Membuat direktori virtual yang disebut ExpenseReports.

    • Membuat aplikasi BizTalk baru yang disebut Sampel Penanganan Kesalahan dan menyebarkan rakitan sampel ke dalamnya.

    • Membuat dan mengikat lokasi penerima BizTalk Server, serta port kirim dan terima.

    • Mendaftarkan dan memulai orkestrasi, memungkinkan lokasi terima, dan memulai port pengiriman.

      Jika Anda memilih untuk membuka dan membangun proyek dalam sampel ini tanpa menjalankan Setup.bat, Anda harus terlebih dahulu membuat pasangan kunci nama yang kuat menggunakan utilitas Nama Kuat .NET Framework (sn.exe). Gunakan pasangan kunci ini untuk menandatangani rakitan sampel.

  3. Sebelum mencoba menjalankan sampel ini, konfirmasikan bahwa BizTalk Server tidak melaporkan kesalahan apa pun selama proses build atau inisialisasi.

    Catatan

    Untuk membatalkan perubahan yang dibuat oleh Setup.bat, jalankan Cleanup.bat. Anda harus menjalankan Cleanup.bat sebelum menjalankan Setup.bat untuk kedua kalinya.

  4. Jika Anda menggunakan Internet Information Services (IIS) 7.0, Anda perlu melakukan langkah-langkah konfigurasi tambahan untuk menyesuaikan pengaturan untuk direktori virtual yang sesuai dengan lokasi terima HTTP BizTalk Server yang digunakan oleh sampel. Konfigurasikan IIS dengan melakukan hal berikut:

    1. Dengan menggunakan Manajer IIS 7.0, buat kumpulan aplikasi baru untuk grup Pengguna Host Terisolasi BizTalk.

    2. Konfigurasikan kumpulan aplikasi untuk dijalankan di bawah identitas pengguna Host Terisolasi BizTalk Server. (Anda dapat melewati langkah ini jika Anda sudah memiliki kumpulan aplikasi yang dikonfigurasi untuk lokasi penerimaAN HTTP BizTalk Server lainnya.)

    3. Konfigurasikan direktori virtual ExpenseReport untuk menggunakan kumpulan aplikasi penerima HTTP yang dibuat pada langkah sebelumnya.

      Jika Anda belum memiliki ekstensi server Web untuk ekstensi ISAPI BTSHTTPReceive.dll, buat dan aktifkan dengan mengatur statusnya ke "Diizinkan". Anda dapat melakukan ini di IIS 7.0 dengan menggunakan konsol Manajemen IIS (baik langsung di bawah Alat Administratif atau melalui konsol Manajemen Komputer) sebagai berikut:

    4. Perluas pohon Pengelola Layanan Informasi Internet .

    5. Klik folder Ekstensi Layanan Web .

    6. Di panel kanan konsol manajemen, klik Tambahkan ekstensi Layanan Web baru.

    7. Dalam kotak dialog Ekstensi Layanan Web Baru , klik Tambahkan.

    8. Dalam kotak dialog Tambahkan file , klik Telusuri untuk memilih file <BizTalkInstallPath>\HttpReceive\BTSHTTPReceive.dll, lalu klik OK.

    9. Konfigurasikan direktori virtual ExpenseReport untuk menggunakan jalur lokal \Program Files (x86)\Microsoft BizTalk Server <VERSION>HTTPReceive

      Untuk informasi selengkapnya, lihat Cara Mengonfigurasi IIS untuk Lokasi Penerimaan HTTP.

Menjalankan Sampel

Sebelum menjalankan sampel dengan laporan pengeluaran yang benar, gunakan prosedur berikut untuk memverifikasi bahwa sampel kasus "tidak ada kesalahan" berfungsi dengan benar.

Untuk memverifikasi bahwa sampel kasus "tidak ada kesalahan" berfungsi dengan benar

  1. Buka formulir InfoPath Laporan Pengeluaran - John Doe.xml. Lihat bidang Departemen dalam formulir. Bidang ini harus diatur ke "Pemasaran".

  2. Di sudut kiri atas jendela InfoPath, klik Kirim atau klik Kirim Ulang Laporan Pengeluaran. Tunggu jendela konfirmasi yang mengatakan laporan pengeluaran berhasil dikirimkan.

    -ATAU-

    Salin dan tempel file ini ke folder ExpenseReportIn .

  3. Anda akan melihat file baru yang dijatuhkan ke folder ExpenseReportOut . File ini adalah formulir laporan pengeluaran yang sama yang dikirimkan selama langkah-langkah sebelumnya.

    Setelah Anda mengonfirmasi kasus "tidak ada kesalahan", gunakan prosedur berikut untuk menjalankan sampel dengan laporan pengeluaran yang salah untuk memicu fungsionalitas penanganan kesalahan.

Untuk memicu penanganan kesalahan

  1. Buka formulir InfoPath Laporan Pengeluaran Tidak Valid - John Doe.xml. Lihat bidang Departemen dalam formulir. Bidang ini diatur ke beberapa nilai yang tidak valid.

  2. Di sudut kiri atas jendela InfoPath, klik Kirim. Tunggu jendela konfirmasi yang mengatakan laporan pengeluaran berhasil dikirimkan.

    -ATAU-

    Salin dan tempel file ini ke folder ExpenseReportIn .

  3. Anda akan melihat file baru yang disebut ErrorReport_<date_time>.xml dihilangkan ke folder ExpenseReportOut .

    Buka file ini dan amati bahwa ini adalah laporan pengeluaran yang dikirimkan pada langkah sebelumnya tetapi dengan informasi kesalahan ditambahkan di awal.

  4. Ganti nilai departemen yang salah dengan "Pemasaran", lalu klik Kirim di sudut kiri atas jendela InfoPath.

    -ATAU-

    Salin dan tempel file ini ke folder ResubmittedReportIn .

  5. Anda akan melihat file baru yang dibuat di folder ExpenseReportOut . File ini adalah laporan pengeluaran yang dikoreksi yang dikirim ulang ke server.

Lihat juga

Menggunakan Perutean Pesan Gagal
Olahpesan (Folder Sampel BizTalk Server)