ODAC 10G R2 Download - Wrong file?
Hi,
I have just downloaded Oracle 10G Release2 ODAC following the link from Oracle Data Provider for .NET on the Downloads Index page. The file downloaded is however a copy of the 10G client (10201_client_win32.zip). The notes say it includes
ODBC
Provider for OLE DB
Objects for OLE
Provider for .NET
The first three are available as separate downloads. Can you confirm that this file is indeed incorrect or indicate the location of the Provider for .NET.
Thanks.
682,049,536 is the uncompressed file size. I think your download process somehow "gunzipped" the file on the way.
Maybe try "Save target as..."
Similar Messages
-
Illustrator cs5 trial download wrong file link ?
I have tried download the Spanish version , but akamai show the Illustrator_15_LS4.7z file as 299mb
when this file is than 4.29 gb, after this the manager pause and cancel the download in 0 b
any other version Czech, English, coreano download OK!; I'm "sure" this is a file error...
any solution...
or use the English version...
I don't understand the English version
thanks a lot !!!
(sorry for my bad English)thanks pero, I'm see this FAQs, akamai page and all adobe.com for help, my system its OK, to download [at least]
i could download fireworks cs5 Without problems, and English version of illustrator, [before the Spanish release...] If it post this here it is like a last resource before giving up myself..
can you download [or try] this spanish version? -
When clicking on a link (in Internet Explorer 9) to download an Access MDB file and then choosing to open the file directly in Microsoft Access (2007) instead of saving it, the file is copied to Temporary Internet Files but Microsoft Access tries to open
a different file and displays an (Unrecognized database format) error.
When I click on the option to open the file, the MDB file is copied to Temporary Internet Files\Content.IE5 but instead of that file, Access tries to open a different (incorrect) file located in Temporary Internet Files\Content.MSO (e.g. in the above error
message, NativeView.do is an XML file containing an error message).
I don't see this problem with Word, Excel or PowerPoint files. When opening a Word file (without saving) the Word file is copied to Content.IE5 but an identical .tmp file is created in Content.MSO which when opened in Microsoft Word displayed the required file
correctly. The same happens for Excel files. PowerPoint appears to be handled a little differently (no .tmp file created in Content.MSO but the required file is still copied to Content.IE5) but the PPT file is still opened correctly in Microsoft PowerPoint.
I think the Content-Type "application/msaccess" is fine because Internet Explorer does launch Microsoft Access. It just tries to open the wrong file (or so I think). However, it looks like the file type is not being determined. Here is what I noticed
when trying to open different Microsoft Office files using Internet Explorer:
The last one is the MDB file. As you can see, only for this type of file, the "Type" (Microsoft Office Access 2007?) is not displayed in this Open/Save dialog box.
On Firefox, I don't see this problem. When I tried clicking on the link to the MDB file in Firefox, Microsoft Access was launched and the file was opened correctly. Is there something I can do so the MDB file is opened properly using IE? I can add/change headers
in the HTTP response that writes this file to the output stream (on disk) if that helps.
Thanks for your time!Sounds like a problem symptom to be discussed in either an IE forum or an Access forum, not here. How did you come to post here? ForumsRedesign. That might be an on-topic issue for this forum. <eg>
Can you find your way to either of those other forums easily from here? Another on-topic question for here I think. ; )
Robert Aldwinckle
Oops, my bad. Thanks for letting me know! :)
I've re-posted it here: http://social.technet.microsoft.com/Forums/ie/en-US/1a818501-296c-42fb-8abb-ba914629c962/launching-microsoft-access-from-internet-explorer-to-view-a-downloaded-mdb-file-opens-the-wrong-file?forum=ieitprocurrentver
Hopefully that's the right place for this.
Cheers! -
I just downloaded a file. The computer says it is not pdf file. What is wrong?
I just downloaded a file. The computer says it is not pdf file. What is wrong?
HI krishbiliyar,
Where did you download the file from? Does the file have PDF filename extension? And where are you getting the message that it's not a PDF file? In Reader or Acrobat?
I look forward to hearing back from you.
Best,
Sara -
10g eval download results in bad file
After the third attempt to download an eval copy of 10g, the zip file cannot be opened, but fails with "Cannot open file, it does not appear to be a valid archive."
Other files, such as the "companion" download and work fine.There's a terrible amount of rubbish in this thread.
while(myStream.read(buffer) != -1){ //this will give the pretest you need for the eof.
//your stuff.
} This is rubbish because the return value isn't stored, so you don't know how much data was returned if EOS didn't occur.
If you're getting reads of length 0... you must have a bug in your code. read() methods do not return zero except via NIO in non-blocking mode.
if you get 10 0's in a rowYou can't even get one 0 in a row, see above.
int read = inFromServer.read(buffer);
if (read == 0)And again. This cannot occur.
The correct way to download a file, or indeed copy any input stream, is as follows:
int count;
byte[] buffe r= new byte[8192]; // or more
while ((count = in.read(buffer)) > 0)
out.write(buffer, 0, count);
out.close();
in.close(); -
Firefox downloads a file with the wrong file extension. How can I fix this?
The title says it all. When I download files, it comes out with the wrong extension, not sure what extension it comes out as.
It actually just comes out as "file."
How can I fix this? Is there something in about:config I can tweak to eliminate this error?Hi dartz!
This type of problems are not related with the browser you are using, in this case, Firefox. This issues are the consequence of the way that the website "packed" the file.
What you should do is download the file, locate the file, give right click on the file and select "Rename". Now, don't change the name!!! Just add "." and then the extension that you wanted. Example, you download the file "norwegianwood", after renaming it, it should read "norwegianwood.srt".
Hope this works for you, take care! -
How to download a file from my site
This is the most basic of problems. I have a one-page site. I have uploaded a folder of images, and made a link to that folder from the home page. The folder with its files show up in DW in the Remote Server. The link shows in the Property Panel.
I would like a friend to be able to download that folder.
Clicking on the link gives unauthorized use.
Right-clicking and choosing "Download linked file as..." downloads only the link.
What am I doing wrong in order to have anyone download a file or folder that I put up on my site?
Here is the link: http://home.comcast.net/~sonnytaylor/
Thanks very much,
SonnyNothing to do with Comcast specifically.
The link at
http://home.comcast.net/~sonnytaylor/index.html
is pointing to a folder with no index.html file inside it.
i.e. http://home.comcast.net/~sonnytaylor/JohnsPhotos/
That'll give a 403 error on most webhosts.
Best options are to either upload a ZIP file containing the images then post a link to that ZIP file.
e.g. http://home.comcast.net/~sonnytaylor/JohnsPhotos/photos.zip
Or, easiest, use a large email service e.g. dropsend.com, yousendit.com etc. -
How to download a file from server machine to client machine using jsp
Hi,
In my application, I have an excel file stored on my server machine. How can I download that excel file on to my client machine using jsp. Is there any other way I can open that file from my machine and save it in my machine using jsp/java?
Its an emergency for me to do this.
Can anyone provide me the full code to download a file from server machine as I don't have
time to browse through various sites.
thanks in advance,
TiijnarPlease post your code using code tags (click on CODE above the text area, when posting)
response.setContentType("application/octet-stream");Why octet-stream? Set the correct mime-type.
String disHeader = "Attachment; Filename=\"filename\"";The filename should just be the file's name. Not the complete path to the file! This will tell anyone where the file is located on the server. It's also inconvenient because by default,the browser will suggest it as the name for the download.
Your way of writing to the output stream is just plain wrong. See this snippet (picked from [http://balusc.blogspot.com/2007/07/fileservlet.html])
BufferedInputStream input = null;
BufferedOutputStream output = null;
try {
// Open streams.
input = new BufferedInputStream(new FileInputStream(file), DEFAULT_BUFFER_SIZE);
output = new BufferedOutputStream(response.getOutputStream(), DEFAULT_BUFFER_SIZE);
// Write file contents to response.
byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
int length;
while ((length = input.read(buffer)) > 0) {
output.write(buffer, 0, length);
// Finalize task.
output.flush();
} finally {
// Gently close streams.
close(output);
close(input);
} -
How to download a file from server?
Hi everyone,
I need to download a file from my server to client machine. I got a sample code from ur forum and I modified it slightly.
//Snippet of code:
public void doGet(HttpServletRequest req, HttpServletResponse res)throws
ServletException, IOException{
int bytesRead=0;
int count=0;
byte[] b1=new byte[1];
//OutputStream out=res.getOutputStream();
res.setContentType("application/html");
//Create an input stream from file URL.
String fileURL="http://localhost:8080/webapps/upload/upload.html";
BufferedInputStream bis=null;
BufferedOutputStream bos=null;
boolean download=false;
res.setHeader("Content-disposition", "attachment; filename=upload.html " );
try{
URL url=new URL(fileURL);
URLConnection connection=url.openConnection();
InputStream in=connection.getInputStream();
bis=new BufferedInputStream(in);
FileOutputStream fileout=new FileOutputStream("upload.html");
bos=new BufferedOutputStream(fileout);
while(-1 != (bytesRead = bis.read())){
try{
bos.write(bytesRead);
bos.flush();
}//end of try forwhile loop
catch(SocketException e){
setError(e);
break;
The code is getting compiled, when I run the appln using the URL,
http://localhost:8080/upload/servlet/DownloadFile
it opens a pop up dialog box, asking whether to "open", "save" or "cancel" buttons. When I try to open a file, I'm getting a blank page.
I'm not getting the contents of the file.
So pls can anyone tel me wht's wrong in the code or do i need to add few more lines in my code?
Also pls let me know, how can I download any files of type .doc, html, .txt, .zip, or any type, without mentioning the file type?
Thanks in advanceDo not use a FileOutputStream (that will save it locally to the server). Call HttpServletResponse.getOutputStream(), which will send it back to the browser. Also remember to call close() on the stream at the end.
- Saish -
Unable to download pdf file in windows 8.1
After upgrading to windows 8.1, i have been unable to download pdf files sent via yahoo email, IE11 and Adobe Reader 11. Did not have this problem before with windows 8. I click on the pdf attachment, NOrton says that the file is safe but nothing happens. Am unable to save the file to my computer either. Have already reloaded Adobe Reader repeatedly, drivers for window 8.1 associated with the hardware on my system, newest version of internet explorer,, upgraded drivers for my Canon printer and still no downloads!!!
Can anybody help? Microsoft community unable to give anymore suggestions.Wrong forum (this is Digital Editions), but ...
I find .pdf files often won't launch properly on my Win8.1. It starts the process but it doesn't do the right thing.
Try making sure you don't have any copies of Reader working (AcroRd32.exe on my 32 bit Win 8.1).
Start a copy from the start screen (or start menu if you've set one up) BEFORE you try to access the file.
Now try to do the download or open it from the downloads directory.
I find that way the file will open properly. -
Downloading a file from Database [Blob field]
I am trying to write an application which can upload and download files [Excel, Word etc.] to/from an Oracle 9i database Blob field. I am using Java/JSP for the same.
The upload part works just fine. However, when I try to download the file that I uploaded, I get an error.
A dialog box comes up asking me to Open/Save the file. However, when I try to save it, it says
�Internet Explorer cannot download �..tion=download&planId= testplan from localhost
Internet Explorer was not able to open this Internet Site. The requested site is either unavailable or cannot be found. Please try again later.�
I am using IE 6.0. I tested the same with Firefox browser and was able to download the file.
Can anyone help?
Code:
Following is the code I am using for the same.
/* Code to retrieve from Blob field */
String sqlString = "SELECT PLAN_DOCUMENT_NAME,PLAN_DOCUMENT FROM BRS_PLAN_DESCRIPTION WHERE PLAN_ID = ?";
ps = con.prepareStatement(sqlString);
ps.setString (1,planId);
rs = ps.executeQuery();
while (rs.next()) {
fileBytes = rs.getBytes("PLAN_DOCUMENT");
fileName = rs.getString("PLAN_DOCUMENT_NAME");
brsPlanDocument.setPlanId(planId);
brsPlanDocument.setFileName(fileName);
brsPlanDocument.setFileBytes(fileBytes);
/* Code for download */
String fileName = brsPlanDocument.getFileName();
String fileType = fileName.substring(fileName.indexOf(".")+1,fileName.length());
if (fileType.trim().equalsIgnoreCase("txt"))
response.setContentType( "text/plain" );
else if (fileType.trim().equalsIgnoreCase("doc"))
response.setContentType( "application/msword" );
else if (fileType.trim().equalsIgnoreCase("xls"))
response.setContentType( "application/vnd.ms-excel" );
else if (fileType.trim().equalsIgnoreCase("pdf"))
response.setContentType( "application/pdf" );
else if (fileType.trim().equalsIgnoreCase("ppt"))
response.setContentType( "application/ppt" );
else
response.setContentType( "application/octet-stream" );
response.setHeader("Content-Disposition","attachment; filename=\""+fileName+"\"");
response.setHeader("cache-control", "no-cache");
byte[] fileBytes=brsPlanDocument.getFileBytes();
ServletOutputStream outs = response.getOutputStream();
outs.write(fileBytes);
outs.flush();
outs.close();Hi,
is this problem solved for you, I am also writing the java code to store different files in blob fields in database(db2udb) and allow users to open them through jsp pages. Upload seems to be working fine.....My big problem is only excel files are opened properly in both IE and Firefox. Word files, image files are not getting opened. Any suggestion as what I could be doing wrong....my jsp is kind of similar to the above one...
thanks in advace, please guide me
long pmsId = new Long(request.getParameter("pmsId")).longValue();
String fileName = request.getParameter("fileName");
int fileSeq = new Integer(request.getParameter("fileSeq")).intValue();
if(fileName.endsWith("txt")) {
response.setContentType("text/plain");
log.debug(" this is a text file");
} else if(fileName.endsWith("xls")) {
response.setContentType("application/vnd.ms-excel");
log.debug(" this is a excel file");
} else if(fileName.endsWith("gif")) {
response.setContentType("image/gif");
log.debug(" this is a image file");
} else if(fileName.endsWith("doc")) {
response.setContentType("application/msword");
log.debug(" this is a doc file");
} else if(fileName.endsWith("pdf")) {
response.setContentType("application/pdf");
log.debug(" this is a pdf file");
} else if(fileName.endsWith("ppt")) {
response.setContentType("application/ppt");
log.debug(" this is a ppt file");
} else {
response.setContentType("application/everythingelse");
log.debug(" this is a unknown ile");
response.setHeader("Content-Disposition", "attachment;filename="+fileName);
OutputStream out1 = response.getOutputStream();
Class.forName("com.ibm.db2.jcc.DB2Driver");
db2Conn = DriverManager.getConnection("jdbc:db2:TESTDB","db2admin","db2fv1000");
//log.debug("connection obtained");
pstmt = db2Conn.prepareStatement(" SELECT * FROM UPLOADDOCS WHERE PMSID = ? AND DOCSEQ = ? ");
//log.debug("statemenmt prepared");
pstmt.setLong(1, pmsId);
pstmt.setInt(2, fileSeq);
rs = pstmt.executeQuery();
int count = 0;
if(rs.next()){
InputStream is = rs.getBinaryStream("DOCUMENT"); //"is" is
//now the binary data
//of the file
byte[] buf = new byte[4096];
int len;
while ((len = is.read(buf)) > 0)
out1.write(buf, 0, len);
out1.close();
out1.flush(); -
Downloading a file from a report link
I have a report link that sends a couple parameters to a secondary page.
The secondary page has a process in it that selects a blob file from a table and then downloads that file.
However, there is no browser download file dialog window that pops-up when the link is clicked.
The file just displays in the browser. So, I'm thinking I have something wrong with my MIME header.
The process that downloads the file is:
<code>
DECLARE
l_length NUMBER;
l_lob_loc BLOB := EMPTY_BLOB();
l_mime_type warm_files.mime_type%TYPE;
BEGIN
apex_application.g_page_text_generated := true;
apex_application.g_unrecoverable_error := true;
select blob_content, dbms_lob.getlength(blob_content), mime_type
into l_lob_loc, l_length, l_mime_type
from WARM_FILES
where context_id = :P12_CONTEXT_ID
and file_id = :P12_FILE_ID
-- set up HTTP header
OWA_UTIL.mime_header (l_mime_type, FALSE);
-- set the size so the browser knows how much to download
HTP.p ('Content-length: ' || l_length);
-- close the headers
OWA_UTIL.http_header_close;
-- download the BLOB
wpg_docload.download_file (l_lob_loc);
END;
</code>
The :P12 variables are the parameters coming in from the link.
There are no errors. The file just displays in the browser window.
Any clues as to what I'm missing are greatly appreciated.
Thanks in advance.
alan.
Edited by: semaphore on Dec 11, 2009 9:14 AMHi Alan,
try this...
This is my procedure which I adapted to yours...
<code>
DECLARE
l_length NUMBER;
l_lob_loc BLOB := EMPTY_BLOB();
l_mime_type warm_files.mime_type%TYPE;
l_file_name VARCHAR2(2000);
BEGIN
apex_application.g_page_text_generated := true;
apex_application.g_unrecoverable_error := true;
SELECT null,
BLOB_CONTENT,
name,
DBMS_LOB.GETLENGTH(blob_content)
INTO l_mime_type,
l_lob_loc,
l_file_name,
l_length
from WARM_FILES
where context_id = :P12_CONTEXT_ID
and file_id = :P12_FILE_ID;
-- set up HTTP header
owa_util.mime_header( nvl(l_mime_type,'application/octet'), FALSE );
-- set the size so the browser knows how much to download
HTP.p ('Content-length: ' || l_length);
-- the filename will be used by the browser if the users does a save as
htp.p('Content-Disposition: attachment; filename="'||substr(l_file_name,instr(l_file_name,'/')+1)|| '"');
-- close the headers
OWA_UTIL.http_header_close;
-- download the BLOB
wpg_docload.download_file (l_lob_loc);
END;
</code>
Hope it helps.
Regards, Zlatko Matanic -
I have a 5s running 7.0.4. and my computer is running Windows 8.1.
We had a baby and my phone filled up fast with pictures and videos, so I decided to offload them onto my PC. I connected my phone to the usb port, and directly copied from the DCIM folder to my hard drive.
Something happened during the first attempt, and the process was interrupted. So I went into each of the sub folders, and selected all files, and started the copy process again. I told the computer to skip any existing files.
So all the file counts matched in each folder, and I figured it was safe to start deleting from my iPhone.
On my hard drive, I separated all the MOV files into my Videos folder. But in Windows Explorer, the thumbnail view showed several MOV files with no thumbnail - just the generic icon.
As I sorted my photos into various folders, I also noticed a lot of generic icons instead of thumbnails for the JPGs. I started to feel concerned that my files had become corrupt during the transfer. But then I noticed a PNG file that was a few hundred megabytes. This was odd, so I added the MOV extension to it. Sure enough, it was a video with the wrong extension.
I renamed every PNG and JPG file that had no thumbnail to add the MOV extension. Every one was a video with the wrong file extension.
Then I went to the video folder, and all the MOV files that had the generic icon were actually JPG files.
Well I was just happy to see that the files were not corrupt.
One more time before I deleted things from my iPhone, I did a spot check to see that the largest videos were on my hard drive. I found a few videos that were not copied over, despite the file counts having been accurate. So I copied the videos again, and compared file sizes and date/times when there was an overwrite prompt. Most were matches, but several were the same file name with different sizes and dates.
I didn't know what was going on, but I just wanted to get the files on my computer. So I renamed my local copy where there was a name collision, and copied the videos. I deleted the videos from my phone as I went along.
I felt pretty confident that I had all the files copied now, so I began mass deleting my photos.
I went to the Photos app on the phone, and watched the thousands of pictures disappear, and the glorious free space grow on my phone.
But wait... there was still 1 video in the Photos app. I thought I had gotten all the MOV files off the phone...
I have a photo info app installed, so I was able to see the file name of the video. I searched for that file name in the DCIM subfolders, but the folder that had that series of files (the IMG_3000-3999 files) listed the files with that particular video skipped. It was clearly still on my phone, because I could play it.
Then I noticed it was a 45 minute long video of my baby. About 5 GB. So I figured it must be due to the file size that it wasn't visible from explorer. (Can't explain why that would be, but M$ keeps changing crap too. I never freaking know what to expect from them either.)
After having deleted all the jpg, png and mov files from the DCIM folder, there were still about 26 files in my camera roll on the iPhone. And I could still view the video.
I decided I wasn't concerned about the photos, I just wanted to figure out how to get the video onto my computer.
So I selected all the photos in the photo app (skipping the 1 remaining video) and tapped the trash can.
Poof! One item remained, and it was one of the garbage photos. My video is GONE! ^#@*&#($^@Q&%( And no, I didn't fat-finger it. I was very careful to select the correct thumbnails.
Looking back, I know that I should have just started the entire file copy process from scratch when funny stuff started happening like mismatched file names. But I am a sleep-deprived new mom and just wasn't thinking clearly. It would be nice if I could have used my file/directory compare program to check the iPhone against my laptop, but it is not compatible with devices, only removable drives.
And no, I don't use iTunes. I stopped using iTunes years ago when it would randomly decide to delete contacts from my phone just because they didn't exist on my computer or some sh-- like that. I have always just manually synced all my stuff and have never had an issue like this. To say I am sad to lose that video is an understatement.
I googled "iPhone undelete" and "iPhone data recovery" and downloaded a trial for one of the likely candidates. It turned up a bunch of garbage, but not my video.
Anyways... I am wondering if anyone else has experienced this type of scenario? Has anybody identified what could cause this to happen? I would like to avoid this in the future. (I will avoid this type of loss, because I know now what I could have done differently to be more careful. But it would be nice if I didn't have to get all neurotic about checking 60GB of photos/videos side by side each time I copy them to my computer...)
I have seen other threads on the forum here regarding corrupted libraries and such, but I am not sure this is the same thing.
One suspicion I have is that it might have to do with the iPhoto app being installed on the phone. I can't articulate why I think that is worth considering. But when I looked at my Video folder, I ended up with many duplicate videos, and all the duplicated videos' file names were 2 numbers apart. As if all the file names got shifted at some point. Very strange.
Thanks for listening to my rant. If anybody has an idea, I am interested. If anybody else has lost precious memories due to this, we should talk. If it is a widespread problem, maybe we can all get together and pound down Apple's door?
As an aside: Why am I unable to select Apple Support Community to post this question to?In my case number of weird things happen whenever I try to copy pictures/videos from my iPhone from direct USB...
1. JPG files are wrongly named as MOV and vice versa.
2. I copy only folders but in addition files with no extension are copied in the main folder, very strange.
3. Whenever I open one of the folders, strange icons like this () start appearing which cannot be copied even.
Unfortunately I used to delete a lot of files with wrong extensions in the past because I never new they could be fixed.
Apple should answer this!
Note: I am using Windows 8.1 and use a direct USB cable without iTunes to copy the media files directly from My Computer. -
Downloading a file from the web
Hi,
I'm trying to implement an automatic update feature in one of my applications. This is done by downloading a jar from from my web server. I've written this method to download the file, but the file it downloads it says isn't a valid archive - so there's something wrong with my download method, but I don't know what. Any ideas on what's wrong with this method? Or any other ideas on how to download the file? I don't want to use FTP as I don't want to include my username / password in the application code.
public static void getRemoteFile(String fileName) {
try {
FileWriter out = new FileWriter( "new.jar", true );
URL url = new URL(fileName);
URLConnection ex = url.openConnection();
BufferedReader in = new BufferedReader( new InputStreamReader( ex.getInputStream() ) );
String inputLine = "";
while ( ( inputLine = in.readLine() ) != null ) {
out.write( inputLine );
out.close();
in.close();
} catch( Exception e ) {
// do nothing
} // end the main methodThanks for the replies. I created this method instead, but I keep getting this error:
java.lang.IllegalArgumentException: URI scheme is not "file"
Any ideas what this means?
File file = new File( new URI("http://www.mydomain.com/test.jar") );
InputStream fis = new FileInputStream(file); // copy target
OutputStream fos = new FileOutputStream("new.jar"); // copy destination
int nSize = fis.available();
byte [] puffer = new byte[nSize];
fis.read( puffer, 0, nSize );
fos.write( puffer, 0, puffer.length );
fis.close();
fos.close(); -
Download PDF file from Application Server in BSP
Hello,
We have a requirement on which we want to download a PDF file stored in Application server using BSP application. I have used function module ARCHIVFILE_SERVER_TO_CLIENT but this FM will help only if i want to download file from GUI it won't work in BSP application.
Further i have used class CL_BSP_UTILITY and download method to download file from application server but it is not working in desired manner.
I am attaching my code for your reference:
DATA: BUTTON_EVENT TYPE REF TO CL_HTMLB_EVENT_BUTTON ,
EVENT TYPE REF TO IF_HTMLB_DATA.
DATA: LS_HOURS LIKE LINE OF GT_HOURS.
DATA STR TYPE STRING.
DATA: OUTPUT TYPE STRING ,
L_XSTRING TYPE XSTRING ,
APP_TYPE TYPE STRING.
EVENT = CL_HTMLB_MANAGER=>GET_EVENT( REQUEST ).
DATA PHY_NAME_OUT TYPE SAPB-SAPPFAD.
IF EVENT IS NOT INITIAL AND EVENT->EVENT_NAME = HTMLB_EVENTS=>BUTTON .
BUTTON_EVENT ?= EVENT .
CASE EVENT->EVENT_SERVER_NAME.
WHEN 'test' .
IF GT_HOURS IS NOT INITIAL.
PHY_NAME_OUT = '/usr/sap/put/form16//01000200_2007.PDF'.
OPEN DATASET PHY_NAME_OUT FOR INPUT IN TEXT MODE ENCODING DEFAULT.
IF SY-SUBRC IS INITIAL.
DO.
READ DATASET PHY_NAME_OUT INTO STR.
IF SY-SUBRC IS INITIAL.
CONCATENATE
OUTPUT
str
cl_abap_char_utilities=>cr_lf
INTO output SEPARATED BY space. "cl_abap_char_utilities=>horizontal_tab
ELSE.
EXIT.
ENDIF.
ENDDO.
ENDIF.
*LOOP AT gt_hours INTO ls_hours.
*CONCATENATE
*OUTPUT
*ls_hours-hour
*cl_abap_char_utilities=>cr_lf
*INTO output SEPARATED BY space. "cl_abap_char_utilities=>horizontal_tab
*ENDLOOP.
APP_TYPE = 'APPLICATION/PDF;charset=utf-16le'.
CALL FUNCTION 'SCMS_STRING_TO_XSTRING'
EXPORTING
TEXT = OUTPUT
MIMETYPE = 'APPLICATION/PDF;charset=utf-16le'
IMPORTING
BUFFER = L_XSTRING.
CONCATENATE CL_ABAP_CHAR_UTILITIES=>BYTE_ORDER_MARK_LITTLE
L_XSTRING
INTO L_XSTRING IN BYTE MODE.
CALL METHOD CL_BSP_UTILITY=>DOWNLOAD
EXPORTING
OBJECT_S = L_XSTRING
CONTENT_TYPE = APP_TYPE
CONTENT_DISPOSITION = 'attachment;filename=webforms.pdf'
RESPONSE = _M_RESPONSE
NAVIGATION = NAVIGATION.
ENDIF.
ENDCASE.
ENDIF.
From this code i am able to download PDF file but it is not opening in local machine.
If any other way to download file then please suggest.
waiting for ur reply.
Regards,
GaganHi,
you do the file reading wrong:
have a look at:
Local declarations.
data:
components type stringtab,
component type string,
path type text255,
file type text255,
line_length type i,
filecontent_binary type sdokcntbin,
rows type sytabix,
content type sdokcntbin,
exception type ref to cx_sy_file_access_error,
exception_tmf type ref to cx_sy_too_many_files ,
block_size type i value 1022,
length type i.
field-symbols:
<hex_container> type x.
constants:
c_dms_blk_size type i value 2550.
clear file_size.
try.
open dataset file_name for input in binary mode message message.
catch cx_sy_file_open into exception.
case exception->textid.
when '4182174D03030063000000000A1551B1'. raise access_error.
when '41825AD355C3005E000000000A1551B1'. raise open_error.
when '47E8B03AECE5BA07E10000000A114829'. raise already_open.
when others.
endcase.
catch cx_sy_file_authority into exception.
case exception->textid.
when '4182174D03030063000000000A1551B1'. raise access_error.
when 'A70BB8396F051547E10000000A11447B'. raise authority_error.
when others.
endcase.
catch cx_sy_too_many_files into exception_tmf.
case exception_tmf->textid.
when '8708B73915F6B645E10000000A11447B'. raise too_many_files.
when others.
endcase.
endtry.
do.
try.
read dataset file_name into filecontent_binary-line.
if sy-subrc <> 0.
add line_length to file_size.
append filecontent_binary to file_content_binary.
exit.
else.
add line_length to file_size.
append filecontent_binary to file_content_binary.
endif.
catch cx_sy_file_open_mode into exception.
case exception->textid.
when '9207B73915F6B645E10000000A11447B'. raise cx_sy_file_open_mode.
when '9807B73915F6B645E10000000A11447B'. raise read_only.
when '9E07B73915F6B645E10000000A11447B'. raise not_open.
when '409D273A2D824360E10000000A11447B'. raise incompatible_mode.
when others.
endcase.
endtry.
enddo.
try.
close dataset file_name.
catch cx_sy_file_close into exception.
case exception->textid.
when '4182174D03030063000000000A1551B1'. raise access_error.
when 'C10BB8396F051547E10000000A11447B'. raise close_error.
when others.
endcase.
catch cx_sy_file_access_error into exception.
case exception->textid.
when '4182174D03030063000000000A1551B1'. raise access_error.
when others.
endcase.
endtry.
Get file size.
split file_name at '/' into table components.
describe table components lines sy-tfill.
read table components into component index sy-tfill.
path = file_name.
replace component in path with ''.
file = component.
call function '/EUH/MMS_GET_FILE_SIZE'
exporting
dir_name = path
file_name = file
importing
file_size = file_size.
and function /euh/mms_get_file_size.
""Local Interface:
*" IMPORTING
*" VALUE(DIR_NAME) TYPE TEXT255
*" VALUE(FILE_NAME) TYPE TEXT255
*" EXPORTING
*" VALUE(FILE_SIZE) TYPE SDOK_FSIZE
*" EXCEPTIONS
*" NO_AUTHORITY
*" ACTIVITY_UNKNOWN
*" NOT_A_DIRECTORY
*" NO_MEDIA_IN_DRIVE
*" TOO_MANY_ERRORS
*" TOO_MANY_FILES
*" BRACKET_ERROR_IN_FILENAME
*" NO_SUCH_PARAMETER
types: begin of files,
line like ocs_file,
end of files.
data: file type files,
f_subrc like sy-subrc value 0,
errno(3) type c,
errmsg(40) type c,
pos type i,
len type i,
parameter(120) type c,
help1(120) type c,
help2(120) type c,
error_counter type i.
data:
dir_list like ocs_file occurs 0 with header line.
CASE sy-subrc.
WHEN 1. f_subrc = 64.
WHEN 2. f_subrc = 65.
WHEN 0.
search dir_name for 'SY-HOST'. "Is SY-HOST used in directory name?
if sy-subrc = 0.
pos = sy-fdpos + 7.
move dir_name(sy-fdpos) to help1.
move dir_name+pos to help2.
concatenate help1 sy-host help2 into dir_name.
endif.
do 12 times. " To avoid endless loop
if dir_name cs '$('. " Replace parameter by their value
pos = sy-fdpos + 2.
if dir_name cs ')'.
len = sy-fdpos - pos.
if len le 0.
f_subrc = 4. exit.
else.
parameter = dir_name+pos(len).
call 'C_SAPGPARAM' id 'NAME' field parameter
id 'VALUE' field parameter.
if sy-subrc = 0.
len = pos + len + 1.
pos = pos - 2.
if pos > 0.
move dir_name(pos) to help1.
else.
help1 = ''.
endif.
pos = strlen( dir_name ).
if pos > len.
move dir_name+len to help2.
else.
help2 = ''.
endif.
concatenate help1 parameter help2 into dir_name.
else.
f_subrc = 8. exit.
endif.
endif.
else.
exit.
endif.
else.
exit.
endif.
enddo.
shift dir_name right deleting trailing '/\ '.
shift dir_name left deleting leading space.
call 'C_DIR_READ_FINISH' " this is from RSWATCH0
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
call 'C_DIR_READ_START'
id 'DIR' field dir_name
id 'FILE' field file_name
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
case sy-subrc.
when 1.
case errno.
when 2 or 20. f_subrc = f_subrc + 66.
when ' '. f_subrc = f_subrc + 67.
endcase.
when 0.
clear error_counter.
do.
clear file.
clear dir_list.
call 'C_DIR_READ_NEXT'
id 'TYPE' field file-line-type
id 'NAME' field file-line-name
id 'LEN' field file-line-len
id 'OWNER' field file-line-owner
id 'MTIME' field file-line-mtime
id 'MODE' field file-line-acc_mode
id 'ERRNO' field errno
id 'ERRMSG' field errmsg. "sy-subrc = 3 is e.g. if return
if sy-subrc = 0 or sy-subrc = 3."data do not fit into variables
perform p6_to_date_time_tz(rstr0400) using
file-line-mtime
file-line-mod_time
file-line-mod_date.
file_size = file-line-len.
dir_list = file-line.
append dir_list.
elseif sy-subrc = 1. " nothing (more) found
exit.
else.
if error_counter > 50.
call 'C_DIR_READ_FINISH'
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
pos = f_subrc mod 2.
if pos = 0. f_subrc = f_subrc + 1. endif.
exit.
endif.
add 1 to error_counter.
endif.
if sy-index > 1000.
pos = f_subrc mod 4.
if pos = 0. f_subrc = f_subrc + 2. endif.
exit.
endif.
enddo.
call 'C_DIR_READ_FINISH'
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
if sy-opsys(3) = 'Win' and not ( file_name cs '*' ).
describe table dir_list lines len.
if len = 0.
help1 = file_name.
translate help1 to upper case.
translate help1 using
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.
call 'C_DIR_READ_START'
id 'DIR' field dir_name
id 'FILE' field help1.
if sy-subrc = 0.
clear error_counter.
do.
clear file.
clear dir_list.
call 'C_DIR_READ_NEXT'
id 'TYPE' field file-line-type
id 'NAME' field file-line-name
id 'LEN' field file-line-len
id 'OWNER' field file-line-owner
id 'MTIME' field file-line-mtime
id 'MODE' field file-line-acc_mode
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
if sy-subrc = 0 or sy-subrc = 3.
help2 = file_name.
translate help2 to upper case.
help1 = file-line-name.
translate help1 to upper case.
if help1 = help2.
perform p6_to_date_time_tz(rstr0400) using
file-line-mtime
file-line-mod_time
file-line-mod_date.
dir_list = file-line.
append dir_list.
endif.
elseif sy-subrc = 1.
exit.
else.
if error_counter > 50.
call 'C_DIR_READ_FINISH'
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
pos = f_subrc mod 2.
if pos = 0. f_subrc = f_subrc + 1. endif.
exit.
endif.
add 1 to error_counter.
endif.
if sy-index > 1000.
pos = f_subrc mod 4.
if pos = 0. f_subrc = f_subrc + 2. endif.
exit.
endif.
enddo.
call 'C_DIR_READ_FINISH'
id 'ERRNO' field errno
id 'ERRMSG' field errmsg.
endif.
endif.
endif.
endcase.
ENDCASE.
CASE f_subrc.
WHEN 1 OR 3. RAISE too_many_errors.
WHEN 2. RAISE too_many_files.
WHEN 4 OR 5 OR 6 OR 7 OR 70 OR 71.
RAISE bracket_error_in_filename.
WHEN 8 OR 9 OR 10 OR 11 OR 74 OR 75.
RAISE no_such_parameter.
WHEN 64. RAISE no_authority.
WHEN 65. RAISE activity_unknown.
WHEN 66. RAISE not_a_directory.
WHEN 67. RAISE no_media_in_drive.
ENDCASE.
endfunction.
Now you will be able to get the filesize and the file in SDOK format sdokbin.
Okay.
You have to build an request and push the content to the user like:
call method server->response->set_header_field( name = 'Content-Type' value = value ).
describe field file_content_binary-line length line_length in byte mode.
bytes_rest = file-size.
loop at file_content_binaries assigning <file_content_binary>.
move <file_content_binary>-line to data.
if bytes_rest <= 0. "mismatch between line values and size
exit.
endif.
if bytes_rest >= line_length.
call method server->response->append_data( data = data
length = line_length ).
else.
call method server->response->append_data( data = data
length = bytes_rest ).
endif.
bytes_rest = bytes_rest - line_length.
endloop.
This will work.
You can set the header fields like you want. Have also a look at sicf node contentserver
and its handler: CL_HTTP_EXT_CSIF
Maybe you are looking for
-
How can I get my iTunes from windows to mac
I just bought this macbook pro, which I love, but I don't want my iphone to erase during sync, how do I get my Itunes Windows stuff onto my Itunes Mac??
-
How can I get Siri to insert a pause (,) when voice-dialing a number?
I join a lot of conference calls with my iPhone. The conference bridges have phone numbers that follow this pattern: (123) 456-7890,1234567# How can I get Siri to insert the pause (,) character, and the pound (hash) sign, into the phone number when
-
MIRO : User-exit to block an invoice
Hello, I try all miro user-exits and badi and nothing works. I need to block some invoices in MIRO. The badi is good but no export parameters (I try dynamic assignment but it dumped !!) I you've any idea, I will reward Thanks
-
ITunes Music Folder Location Default
So for a long time I have kept all my music on an external hard drive and iTunes and the library on my Macbook laptop. I have my "iTunes Music folder location" set as "200GBHD:Music:" and so when my firewire drive is plugged in iTunes would store all
-
Hi: I'm having a problem with Oracle 9.0.1, I'm doing an export/import in my production database however I'm getting the errors 6540, 6553 an PLS-00123, it is sending the message that the program is too large, but it is not true, I did de import/expo