none
ASP.NETの不具合 RRS feed

  • 質問

  • ASPを基にお問い合わせフォームを作成しました。
    しかし、数通に1通程度の割合で下記のように本文が空白のメールが届くようになりました。
    タイトルについては、指定したタイトルが表示されます。
    本来だと、「氏名」「フリガナ」「生年月日」等に入力した情報が記載されます。
    (例)
    氏名:
    フリガナ:
    生年月日:年月日




    試しにテストメールを送信したところ、「問い合わせをした側」には『お問い合わせを承りました』というメールが、
    「問い合わせを受け付けた側」には『お問い合わせフォームからのお問合せ』というメールがそれぞれ届き、どちらにも
    問題なく入力した内容が記載されていました。

    このお問い合わせフォームは、未入力では送信できないようにしており、未入力で「確認画面へ」を押すと、未入力の欄に
    エラー文が表示されるようになっています。

    全てのメールが空白ではないことから、ソースの問題ではないと考えております。
    そこで、ソースの問題以外に考えられる原因は何でしょうか。
    また、新旧のExchange Serverが混在している場合、このようなことが起こる可能性はありますでしょうか。

    よろしくお願い致します。
    2016年1月4日 11:08

回答

  • 数通に1通程度の割合で失敗するような、ソースの問題と思います。少なくともこの質問文からは他の原因を推測することはできないかと。第三者の視点で読み返してみてください。例えば最終行でいきなり「新旧のExchange Server」などと言及されても何のことか他人にはわかるはずがありません。
    • 回答としてマーク 星 睦美 2016年1月22日 4:48
    2016年1月5日 0:48
  • もう少し情報収集をされてみてはどうでしょうか。

    例えば、
    ・ロギング処理を追加して、メール送信前にフォームに入力された文字列を
     サーバーなどのローカルにテキストファイルなどで保存してみてください。
     ブランクの時とそれ以外で何か差異が無いかどうかをチェックしてみてください。

    ・ブランクのメールが届く際に、IISログを調べてページ遷移に不審な点が無いかどうか確認してみてください。

    他に、未入力の場合に送信できないようにしてる処理は何で実装されていますか?
    サーバーサイドでチェックしているか、クライアントサイドか、両方か。
    クライアントサイドだけでしたら、すり抜けている可能性を否定できません。

    まずはASP.NETやExchangeの不具合を疑う前に、詳細に切り分けることをお勧めします。

    • 回答としてマーク 星 睦美 2016年1月22日 4:48
    2016年1月5日 0:51
  • ASPを基にお問い合わせフォームを作成しました。
    しかし、数通に1通程度の割合で下記のように本文が空白のメールが届くようになりました。
    タイトルについては、指定したタイトルが表示されます。
    本来だと、「氏名」「フリガナ」「生年月日」等に入力した情報が記載されます。
    (例)
    氏名:
    フリガナ:
    生年月日:年月日




    試しにテストメールを送信したところ、「問い合わせをした側」には『お問い合わせを承りました』というメールが、
    「問い合わせを受け付けた側」には『お問い合わせフォームからのお問合せ』というメールがそれぞれ届き、どちらにも
    問題なく入力した内容が記載されていました。

    このお問い合わせフォームは、未入力では送信できないようにしており、未入力で「確認画面へ」を押すと、未入力の欄に
    エラー文が表示されるようになっています。

    全てのメールが空白ではないことから、ソースの問題ではないと考えております。
    そこで、ソースの問題以外に考えられる原因は何でしょうか。
    また、新旧のExchange Serverが混在している場合、このようなことが起こる可能性はありますでしょうか。

    よろしくお願い致します。

    まず、本文全体が空ではなく、入力された文字列が入る部分だけが空であることから、ほぼ間違いなくメール処理特有の問題ではなく、ASP.NETアプリとしてのプログラムのバグです。

    ありがちなパターンとしては、たとえば入力文字列を処理する際にメンバ変数を使用して処理していて、その変数がstatic(VBだとShared)になってるなんてのがあります。

    ※数回に一度というのが具体的にどんな感じかわかりませんが、時々おかしいというのはこういうのが原因の可能性があったりします。

    もちろん、チェックをクライアント側だけでしていてすり抜けた可能性、チェックそのものに不備がある可能性など、可能性はいくつもあります。

    • 回答としてマーク 星 睦美 2016年1月22日 4:48
    2016年1月5日 1:12

すべての返信

  • 数通に1通程度の割合で失敗するような、ソースの問題と思います。少なくともこの質問文からは他の原因を推測することはできないかと。第三者の視点で読み返してみてください。例えば最終行でいきなり「新旧のExchange Server」などと言及されても何のことか他人にはわかるはずがありません。
    • 回答としてマーク 星 睦美 2016年1月22日 4:48
    2016年1月5日 0:48
  • もう少し情報収集をされてみてはどうでしょうか。

    例えば、
    ・ロギング処理を追加して、メール送信前にフォームに入力された文字列を
     サーバーなどのローカルにテキストファイルなどで保存してみてください。
     ブランクの時とそれ以外で何か差異が無いかどうかをチェックしてみてください。

    ・ブランクのメールが届く際に、IISログを調べてページ遷移に不審な点が無いかどうか確認してみてください。

    他に、未入力の場合に送信できないようにしてる処理は何で実装されていますか?
    サーバーサイドでチェックしているか、クライアントサイドか、両方か。
    クライアントサイドだけでしたら、すり抜けている可能性を否定できません。

    まずはASP.NETやExchangeの不具合を疑う前に、詳細に切り分けることをお勧めします。

    • 回答としてマーク 星 睦美 2016年1月22日 4:48
    2016年1月5日 0:51
  • ASPを基にお問い合わせフォームを作成しました。
    しかし、数通に1通程度の割合で下記のように本文が空白のメールが届くようになりました。
    タイトルについては、指定したタイトルが表示されます。
    本来だと、「氏名」「フリガナ」「生年月日」等に入力した情報が記載されます。
    (例)
    氏名:
    フリガナ:
    生年月日:年月日




    試しにテストメールを送信したところ、「問い合わせをした側」には『お問い合わせを承りました』というメールが、
    「問い合わせを受け付けた側」には『お問い合わせフォームからのお問合せ』というメールがそれぞれ届き、どちらにも
    問題なく入力した内容が記載されていました。

    このお問い合わせフォームは、未入力では送信できないようにしており、未入力で「確認画面へ」を押すと、未入力の欄に
    エラー文が表示されるようになっています。

    全てのメールが空白ではないことから、ソースの問題ではないと考えております。
    そこで、ソースの問題以外に考えられる原因は何でしょうか。
    また、新旧のExchange Serverが混在している場合、このようなことが起こる可能性はありますでしょうか。

    よろしくお願い致します。

    まず、本文全体が空ではなく、入力された文字列が入る部分だけが空であることから、ほぼ間違いなくメール処理特有の問題ではなく、ASP.NETアプリとしてのプログラムのバグです。

    ありがちなパターンとしては、たとえば入力文字列を処理する際にメンバ変数を使用して処理していて、その変数がstatic(VBだとShared)になってるなんてのがあります。

    ※数回に一度というのが具体的にどんな感じかわかりませんが、時々おかしいというのはこういうのが原因の可能性があったりします。

    もちろん、チェックをクライアント側だけでしていてすり抜けた可能性、チェックそのものに不備がある可能性など、可能性はいくつもあります。

    • 回答としてマーク 星 睦美 2016年1月22日 4:48
    2016年1月5日 1:12