Hi Giulio,

+1 for Michael suggestion, you should try to backup the file locally before
transferring.

Another item I could see in your code (thanks for sharing) that, it just
connect and transfer the file to ftp location. I see many methods with
FTPClient class. One is to set the buffer size.
FTPClient.setBufferSize(int), which set the internal buffer size for
buffered data streams.

As you mentioned initially mostly you got the successful transfer, and
problem occurs very few time. Please consider the size of the file to
transfer and increase its buffer size should resolve your problem. Also
there are many other methods which allows you to get/set the transfer
status and mode etc should help.

Reference:
https://commons.apache.org/proper/commons-net/apidocs/org/apache/commons/net/ftp/FTPClient.html

HTH!



Rishi Solanki
Sr Manager, Enterprise Software Development
HotWax Systems Pvt. Ltd.
Direct: +91-9893287847
http://www.hotwaxsystems.com
www.hotwax.co

On Fri, Mar 30, 2018 at 10:42 PM, Michael Brohl <michael.br...@ecomify.de>
wrote:

> Hi Giulio,
>
> It seems you directly store the generated file to the ftp server, correct?
>
> In such cases, we store the file to be transferred locally in an archive
> directory and then transfer it to the ftp server.
>
> You'll see if the file was written and you have a backup in case there was
> something wrong with the ftp transfer.
>
> Best regards,
>
> Michael
>
>
> Am 30.03.18 um 16:16 schrieb Giulio Speri - MpStyle Srl:
>
> Hi Rishi,
>>
>> thanks for the reply!
>>
>> The api used for the ftp transfer are the apache FTP api, group
>> "commons-net" (version 3.5);
>> The code used to connect and store file via fftp is the following:
>>
>> ftp = new FTPClient()
>> ftp.connect "xxx.yyyyyy.ww"
>> ftp.enterLocalPassiveMode()
>> ftp.login "username", "password"
>> ftp.changeWorkingDirectory "INPUT_DIRECTORY"
>> //put
>> InputStream file_put= new FileInputStream(directoryZip);
>> ftp.setFileType(FTP.BINARY_FILE_TYPE);
>> ftp.storeFile(zipName, file_put);
>> file_put.close()
>> ftp.logout()
>> ftp.disconnect()
>>
>> Shouldn't Groovy automatically raise exception in case of errors?
>>
>>
>>
>>
>> 2018-03-30 15:07 GMT+02:00 Rishi Solanki <rishisolan...@gmail.com>:
>>
>> Giulio,
>>>
>>> In addition to what Nicolas suggested please share or look into the
>>> specific code which logs the files and export the orders at ftp locaion.
>>> Probable cause for such error writer create the file at particular
>>> location
>>> but could not push the data/file due to some reason but send no
>>> exception/failure.
>>>
>>> My guess problem should be related to pushing the exported data and logs
>>> to
>>> ftp location and is giving success but not pushing. Kind of case when we
>>> tell the writer object to write and close. Sometime writer.flush() is
>>> also
>>> required.
>>>
>>> Also if possible at your end then share the relevant code and api you are
>>> using, to better understand the problem.
>>>
>>> HTH!
>>>
>>>
>>> Rishi Solanki
>>> Sr Manager, Enterprise Software Development
>>> HotWax Systems Pvt. Ltd.
>>> Direct: +91-9893287847
>>> http://www.hotwaxsystems.com
>>> www.hotwax.co
>>>
>>> On Fri, Mar 30, 2018 at 5:48 PM, Nicolas Malin <nicolas.ma...@nereide.fr
>>> >
>>> wrote:
>>>
>>> Hello Giulio,
>>>>
>>>> On 30/03/2018 14:05, Giulio Speri - MpStyle Srl wrote:
>>>>
>>>> Hi all,
>>>>> [...] Now, here is the issue; sometimes (runtime in which happen seems
>>>>> random), I
>>>>> notice that:
>>>>> - the service in the Job List screen, has the state of "Finished" (no
>>>>> errors);
>>>>> - No log file nor zip file is written;
>>>>> - the flag on the OrderHeader entity has been set to "Y" (by default is
>>>>> null this field);
>>>>> - no error or exception found in ofbiz/error log files;
>>>>>
>>>>> The Job Poller on the second instance of ofbiz is disabled
>>>>> ("poll-enable=false" in serviceengine.xml), so that all the scheduled
>>>>>
>>>> jobs
>>>
>>>> are run only on the first instance.
>>>>>
>>>>> I am quite confused by this situation and I really don't know what and
>>>>> where to look, to understand what happens.
>>>>>
>>>>> Does anyone ever experienced a similar issue?
>>>>>
>>>>> I worked several time with service engine and I interpreted your
>>>> feedback
>>>> as follow :
>>>> * the service in the Job List screen, has the state of "Finished" -> Ok
>>>> for OFBiz the service return a success
>>>> * the flag on the OrderHeader entity has been set to "Y" (by default is
>>>> null this field); -> If your service run under transaction, no reason
>>>>
>>> that
>>>
>>>> your service correctly
>>>> * No log file nor zip file is written
>>>>    ** I see different case, if you are sure that your code works
>>>> properly
>>>> check if you didn't manage some silent exception ( as
>>>> try{...}catch(Exception){ }) and is it's the case review you exception
>>>> management.
>>>>    ** Increase your code with more log with good log4j configuration for
>>>> track your service.
>>>>    ** Check if you haven't external element that can be delete your file
>>>>
>>> by
>>>
>>>> inadvertence
>>>>    ** a doubt, send an email with the generate file to your developer
>>>> team
>>>> in // to the storage.
>>>>    ** no solution -> Use the remote debugger
>>>>
>>>> I hope you can find a solution to your problem
>>>> Nicolas
>>>>
>>>> Thanks in advance for your help.
>>>>
>>>>> Giulio
>>>>>
>>>>>
>>>>>
>>
>>
>
>

Reply via email to