473,322 Members | 1,610 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,322 software developers and data experts.

replacing ASP/VBScript with Python

I have inherited an extremely messy ASP/VBScript application which
is a pain for me to support. Now the customer is thinking about a
redesign. I'd like to rewrite the whole thing in Python but the app
has to meet some conditions like

- IIS frontend
- MSSQL db server
- Win32 authentication
- No 'ugly' URLs like http://server/cgi-bin/frontend.cgi?main.py
- Performance: intranet with ~ 1000 users

My personal preferences:

- I'd rather do this in plain Python than using e.g. Zope because I
fear the additional complexity of handling Zope and make it seam-
lessly work with IIS.
- I'd like to do session handling in Python because ASP's session
object is quite limited and some of the ASP app's mess is caused
by trying to use it for compound data type storage. OTOH I could
pickle Python objects to a string and store that in an ASP session.

Thanks for any help.

--
-------------------------------------------------------------------
Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
E-mail 'cGV0ZXIubWFhc0BtcGx1c3IuZGU=\n'.decode('base64')
-------------------------------------------------------------------
Jul 18 '05 #1
5 2000
Peter Maas schrieb:
I have inherited an extremely messy ASP/VBScript application which
is a pain for me to support. Now the customer is thinking about a
redesign. I'd like to rewrite the whole thing in Python but the app
has to meet some conditions like

[...]

Just noticed that this posting doesn't contain any questions. Here
they are:

Any comments? Has anybody done something comparable successfully and
give some advice?

Thanks in advance.

:)

--
-------------------------------------------------------------------
Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
E-mail 'cGV0ZXIubWFhc0BtcGx1c3IuZGU=\n'.decode('base64')
-------------------------------------------------------------------
Jul 18 '05 #2
> Just noticed that this posting doesn't contain any questions. Here
they are:

Any comments? Has anybody done something comparable successfully and
give some advice?

Thanks in advance.


You did not really give much information of what your application does -
e.g. for a CMS, I'd strongly recommend a zope based solution. Other apps
might be better written in other frameworks.
--
Regards,

Diez B. Roggisch
Jul 18 '05 #3
Diez B. Roggisch schrieb:
You did not really give much information of what your application does -
e.g. for a CMS, I'd strongly recommend a zope based solution. Other apps
might be better written in other frameworks.


It's a procurement app. Users (employees) can search in a product list
and generate orders to the company's internal or external suppliers.
The orders are stored in a database and emails are generated to the
addresses of the buyer and the suppliers. There is no direct interface
to an erp app (like SAP).

--
-------------------------------------------------------------------
Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
E-mail 'cGV0ZXIubWFhc0BtcGx1c3IuZGU=\n'.decode('base64')
-------------------------------------------------------------------
Jul 18 '05 #4
Peter Maas schrieb:
I have inherited an extremely messy ASP/VBScript application which
is a pain for me to support. Now the customer is thinking about a
redesign. I'd like to rewrite the whole thing in Python but the app
has to meet some conditions like

- IIS frontend
- MSSQL db server
- Win32 authentication
- No 'ugly' URLs like http://server/cgi-bin/frontend.cgi?main.py
- Performance: intranet with ~ 1000 users


In the meantime I have searched the internet and found plenty of options:

- plain cgi with fastcgi and mod_rewrite for IIS to transform the URL
- quixote cgi with fastcgi and mod_rewrite
- Webware + wkcgi
- Python ASP (registering Python with Pywin32 as ASP language)
- mxODBC + SQL ODBC driver
- pyADO + SQL MDAC driver

I'm now confident that it is doable and keen on finding out. The usual
question: what is the one and best way to do it? ;)

--
-------------------------------------------------------------------
Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
E-mail 'cGV0ZXIubWFhc0BtcGx1c3IuZGU=\n'.decode('base64')
-------------------------------------------------------------------
Jul 18 '05 #5
D H
Peter Maas wrote:
Peter Maas schrieb:
I have inherited an extremely messy ASP/VBScript application which
is a pain for me to support. Now the customer is thinking about a
redesign. I'd like to rewrite the whole thing in Python but the app
has to meet some conditions like

- IIS frontend
- MSSQL db server
- Win32 authentication
- No 'ugly' URLs like http://server/cgi-bin/frontend.cgi?main.py
- Performance: intranet with ~ 1000 users

In the meantime I have searched the internet and found plenty of options:

- plain cgi with fastcgi and mod_rewrite for IIS to transform the URL
- quixote cgi with fastcgi and mod_rewrite
- Webware + wkcgi
- Python ASP (registering Python with Pywin32 as ASP language)
- mxODBC + SQL ODBC driver
- pyADO + SQL MDAC driver


Can those do Windows authentication though? I guess you could with
Python ASP. If you really are stuck with ASP/IIS/Windows, then you
might find using boo or ironpython easier since they work with .NET.
I'm just saying it is an option, not that you shouldn't use CPython.
- I'd like to do session handling in Python because ASP's session
object is quite limited and some of the ASP app's mess is caused
by trying to use it for compound data type storage. OTOH I could
pickle Python objects to a string and store that in an ASP session.


For storing complex data objects, instead of pickle, you can either use
..NET serialization: http://boo.codehaus.org/XML+Serialization
or db4objects, a GPL tool: http://www.db4o.com/
There is a sample of using boo with db4o here:
http://db4oboobrowser.sourceforge.net/
Or ORMs like Gentle.NET can work with MSSQL:
http://www.mertner.com/confluence/display/Gentle/Home
Jul 18 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

13
by: Tim Howarth | last post by:
I'm (very non expert) trying to use a snippet of VBScript (to shut down Windows workstations) converted to Python but have hit a problem. The VBScript below work fine; pc="MyPC" Set...
4
by: John Benson | last post by:
Hi, I'm in a tightly-secured environment where I may not be allowed to use Python for some scripting work, and may have to fall back on what came with Windows 2K. I'm cracking "VBScript in a...
1
by: John Benson | last post by:
Yes, but I was referring to VBScript apart from the runtime children like Dictionary, Network etc., like the C language apart from the Standard Library. I agree, though, Dictionaries are cool,...
13
by: yaipa | last post by:
What would be the common sense way of finding a binary pattern in a ..bin file, say some 200 bytes, and replacing it with an updated pattern of the same length at the same offset? Also, the...
3
by: Valentina Boycheva | last post by:
Is there a way to make programs written in these two languages communicate with each other? I am pretty sure that VBScript can access a Python script because Python is COM compliant. On the other...
1
by: Valentina Boycheva | last post by:
Thanks for the reply. I already have "Learning Python" from Mark Lutz and David Ascher, which covers 2.3 (I am in 2.4). However, it seems like heavy artillery to me. What I want is, for instance,...
1
by: Larry Neylon | last post by:
Hi, I'm working on a VBScript application on IIS6 and I'm looking for some advice about the best way of replacing or improving session variable usage. The application is in a secure extranet...
3
by: aine_canby | last post by:
Hi, I'm working with a number of scripts which were written years ago for my company for Python 2.2, and I'd like to update for Python 2.5. I have written a script to add # -*- coding: cp1252...
1
by: verthe | last post by:
Hello, I have a python script I picked up from internet but basically I'm working with vbscript on the server side. However vbscript is not good for the task I want to perform (working with large...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.