- - PR -
社内サーバーから外部WEBサーバーへのデータアップロード
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-03-31 22:07
BAMBOOと申します。
ASP.Netにて ユーザーの社内サーバー(Win2003Server・IIS6.0)より 弊社のWEBサーバー(Win2000Server,IIS5.0)に対して ファイルアップロード及びDB更新を行おうと考えています。 ユーザーサーバー、WEBサーバーにはIISによるASPサービスを構築可能 ただ、ユーザー側で作成したファイルは、できれば自動、もしくは、ワンクリックにて データアップロード、WEBサーバーでのデータ更新、ユーザーへの更新結果の表示までを行い たいのです。。。 FTPを使用してもいいのですが、.Netを使用して実現できる方法があれば、教えて頂けないでしょうか。 1.HTTPによる通信のみ可能 2.WEBサーバーからユーザーサーバーは参照不可 3.両サーバーにIIS設置 4.WEBアプリケーションからの実行で、ユーザーサーバー内で生成された テキストデータをWEBサーバーにアップロード 5.WEBサーバーにて処理 6.更新結果をユーザーに返す SOAPなんぞも調べて見たのですが、実現可能なのかどうかが不明になってきた ので、ここで質問させて頂きました。 よろしくお願いします。 | ||||||||
|
投稿日時: 2005-04-01 11:15
こんにちは。
自分がやるとするならば、 1.Webサーバー側にWebサービスを作成 2.Webサービスは、ファイルのバイトデータを引数で取れるようにする 3.社内サーバーのアプリは、テキストデータをバイトデータに変換し、Webサービスを呼び出し (このテキストデータってファイルイメージとして考えてます。アップロードというぐらいだから、タダの文字列じゃないですよね?文字列だったら文字列のまま渡せばOKだけど) 4.呼び出されたWebサービスは、バイトデータをストリームに変換し、テキストデータの内容を読み取り 5.読み取ったデータをDBに更新。更新後、Webサービスの戻り値等で結果を返す。 6.社内サーバーアプリは、Webサービスの呼び出しが終了したら結果をユーザーに提示 かな。。。 と書いてから「WEBサーバーにはIISによるASPサービスを構築可能」って部分が気になる。 もしかして、Webサーバー側にはWebサービスは構築できない? (消すのもなんなんでこのまま投稿しておきま) | ||||||||
|
投稿日時: 2005-04-01 18:51
BAMBOOです。
ご回答ありがとうございます。 今日ボチボチ調べつづけていたところそういう感じで可能かな?と思っていました。 WEBサービスをWEBサーバーに設定するのは可能です。 ご回答いただいた方法は理解できました! そこで、再度質問なのですが、 VB.NetによるWEBサービス及び、クライアントで実現可能なのでしょうか? というのは、その辺りのTIPSはC#がメインなようなので・・・ できれば、VBでやりたいなぁ。と思っております。 サンプルらしきものがあれば非常にありがたいのですが、パーツでもいいので ヒントを頂けませんでしょうか(^^; | ||||||||
|
投稿日時: 2005-04-02 00:33
C#のサンプルがあるならセミコロンはずしたり宣言部分書き換えたり・・ #確かにC#のサンプル多いですね。 http://www.microsoft.com/japan/msdn/howto/ http://support.microsoft.com/default.aspx?scid=kb;ja;309013 | ||||||||
|
投稿日時: 2005-04-02 02:22
BAMBOOです。
回答ありがとうございます。 なるほど、確かにVBもC#も基本的には同じだと認識はしているのですが、 http://www.atmarkit.co.jp/fdotnet/special/wse04/wse04_01.htmlのサンプル アプリケーションを実行しようとすると、HttpSoapContext.RequestContext; の部分で、コンパイルエラーとなってしまい、私の考えは間違いなのかな?と・・・ サービスの作成方法が悪かったのかなぁ。とも思ったのですが、本文そのままに実行してみた次第で。。 C#をVBに変換したつもりが悪かったのでしょうかねぇ? と思い、前述の質問をお返ししてしまいました。 みなさん、あのサンプルで上手くいかれたのでしょうか? | ||||||||
|
投稿日時: 2005-04-02 03:31
Dim ctx As SoapContext = HttpSoapContext.RequestContext こうでしたっけ。しかるべきdllへの参照があることを確認してクラス名をフルネームで 書いてみる。それで駄目(orよくわからない)なら・・・・
http://www.atmarkit.co.jp/fdotnet/special/wse01/index.html 「WSEのインストール」なんてのがあるから。。。 サンプルは条件設定や前後関係を把握しないとうまくいかないことが多々ありますね。 ここはVB.NETですね。Web MatrixなのでVS.NETと同じでないと思いますが。 http://www.atmarkit.co.jp/fdotnet/webmatrix/webmatrix03/webmatrix03_03.html もしWebサービスを扱ったことがないのなら、はじめはたとえば単に文字列を引数にした Webサービスを作ってみる。ファイルはそれの応用です。たとえば文字列をバイト配列に すれば出来ますから。 http://support.microsoft.com/default.aspx?scid=kb;ja;301273 | ||||||||
|
投稿日時: 2005-04-02 12:06
BAMBOOです。
ありがとうございます。 教えて頂いた資料を元にやってみます! |
1