How to launch MuleServer in Intellij - intellij-idea

I'm trying to launch an existing mule server project in Intellij.
I followed these instructions and after a number fo tweaks to my build path, have worked my way to the error below:
2013-04-26 10:55:26,632 ERROR [main] [MuleServer] A Fatal error has occurred while the server was running: org.mvel2.ast.Function.<init>(Ljava/lang/String;[C[CILorg/mvel2/ParserContext;)V
java.lang.NoSuchMethodError: org.mvel2.ast.Function.<init>(Ljava/lang/String;[C[CILorg/mvel2/ParserContext;)V
at org.mule.el.mvel.MVELFunctionAdaptor.<init>(MVELFunctionAdaptor.java:27)
at org.mule.el.mvel.MVELExpressionLanguageContext.declareFunction(MVELExpressionLanguageContext.java:229)
at org.mule.el.mvel.StaticVariableResolverFactory.<init>(StaticVariableResolverFactory.java:32)
at org.mule.el.mvel.MVELExpressionLanguage.initialise(MVELExpressionLanguage.java:99)
at org.mule.expression.DefaultExpressionManager.initialise(DefaultExpressionManager.java:611)
at org.mule.DefaultMuleContext.initialise(DefaultMuleContext.java:223)
at org.mule.context.DefaultMuleContextFactory.doCreateMuleContext(DefaultMuleContextFactory.java:192)
Thanks for your help.

Tracked this down to a conflict between different versions of mvel2. Seems they changed the signature of Function() from 2.0.19:
Function(String name, char[] parameters, char[] block, int fields, ParserContext pCtx)
to 2.1.beta1:
Function(String name, char[] expr, int start, int offset, int blockStart, int blockOffset, int fields, ParserContext pCtx)

Related

Upgrade to Java 17 throws java.lang.RuntimeException: Error creating extended parser class: Could not determine whether class has already been loaded

I am using jtwig lib and the code was working fine but when we upgraded to Java 17, I am getting the below mention runtime exception.
Below is the method and throws RuntimeException while calling template.render()
String renderDescription(String templatePath,String userId, String caseId) {
JtwigTemplate template =
JtwigTemplate.classpathTemplate(templatePath);
JtwigModel model = JtwigModel.newModel()
.with("userId", userId)
.with("caseId", caseId)
.with("statusPageUrlTemplate",
config.getStatusPageUrlTemplate());
return template.render(model);
}
java.lang.RuntimeException: Error creating extended parser class: Could not determine whether class 'org.jtwig.parser.parboiled.base.BooleanParser$$parboiled' has already been loaded
at org.parboiled.Parboiled.createParser(Parboiled.java:58)
at org.jtwig.parser.parboiled.ParserContext.instance(ParserContext.java:31)
at org.jtwig.parser.parboiled.ParboiledJtwigParser.parse(ParboiledJtwigParser.java:37)
at org.jtwig.parser.cache.InMemoryConcurrentPersistentTemplateCache.get(InMemoryConcurrentPersistentTemplateCache.java:39)
at org.jtwig.parser.CachedJtwigParser.parse(CachedJtwigParser.java:19)
at org.jtwig.JtwigTemplate.render(JtwigTemplate.java:98)
at org.jtwig.JtwigTemplate.render(JtwigTemplate.java:74)
I was facing a similar issue after upgrading JVM version, and I found that adding this environment variable helped:
JDK_JAVA_OPTIONS=--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED
I believe it has something to do with stricter default limits on reflection when trying to inspect built-in classes.

debugging vxworks loadModule failure

I have a VxWorks Image Project project without a File-System on MPC5200B, using DIAB tool-chain.
I need to dynamically load a module from flash.
I allocated memory on my stack char myTemporaryModuleData[MAX_MODULE_SIZE]
and filled it with the module data from Flash.
(checked that the binary data is intact)
then i create a memDevice('/mem/mem01', myTemporaryModuleData, moduleReadLength)
open the psuedo-stream int fdModuleData = open("/mem/mem01", O_RDONLY, 777);
when i run int mId = loadModule(fdModuleData, LOAD_ALL_SYMBOLS);
did not see anything in the console after running loadModule();
but mId = 0 which indicates failure :(.
getErrno() returned 0x3D0004 (S_objLib_OBJ_TIMEOUT)
NOTE: it didn't take long at all to fail => timeout?
i tried replacing the module with a simple void foo() { printf(...); } module but still failes with same issue.
tried loading an .out instead of .o
unfortunately, nothing got me nowhere,
How can i know what caused it to fail? (log, last_error, anything i should check?)
FOUND IT.
Apparently, it was a mistake in the data read from the flash.
What I can contribute is that 'loadModule()' from memDrv device is possible and working.

CloudReports (Cloudsim Extension) on Cloudlet migrations gives error Null Exception

I'm Kind new in Cloudsim and CloudReports Extension so i don't know why
when running the CloudReports simulator it gives this Error:
nullpointerexception at org.cloudbus.cloudsim.power.powerdatacenter.processcloudletsubmit(powerdatacenter.java:269)
I was adding a cloudlet scheduling Algorithm to the Extension
All I can see that the error happens with cloudlets Migration.
I tried searching alot about how to Fix it but didn't find something that will help me.
the Error is like this:
java.lang.NullPointerException
at org.cloudbus.cloudsim.Datacenter.processCloudletSubmit(Datacenter.java:761)
at org.cloudbus.cloudsim.power.PowerDatacenter.processCloudletSubmit(PowerDatacenter.java:269)
at org.cloudbus.cloudsim.Datacenter.processEvent(Datacenter.java:159)
at org.cloudbus.cloudsim.core.SimEntity.run(SimEntity.java:406)
at org.cloudbus.cloudsim.core.CloudSim.runClockTick(CloudSim.java:471)
at org.cloudbus.cloudsim.core.CloudSim.run(CloudSim.java:835)
at org.cloudbus.cloudsim.core.CloudSim.startSimulation(CloudSim.java:151)
at cloudreports.simulation.Simulation.runSimulation(Simulation.java:157)
at cloudreports.simulation.Simulation.runAllSimulations(Simulation.java:129)
at cloudreports.simulation.Simulation.run(Simulation.java:98)
at java.lang.Thread.run(Thread.java:748)
plz Advise;
Regards.
I ran into the same problem while I was following the simulation examples provided in the CloudSim project. After debugging figured out that the problem was with setting the UserID of the created cloudlet. I was setting a random value as the userId while the simulation retrieves the cloudlet using the brokerId. So setting the userId with the brokerId that was created did the trick for me.
// dataCenterBroker is the instance of the broker which you created
int brokerId = dataCenterBroker.getId();
//setting the userId after creating the cloudlet
cloudLet.setUserId(brokerId)

PCLCrypto 'PInvoke.NTStatusException' STATUS_DATA_ERROR

Exception thrown: 'PInvoke.NTStatusException' in PInvoke.Kernel32.DLL
Additional information: NT_STATUS error: STATUS_DATA_ERROR (0xC000003E)
Hi,
I keep getting this error every so often when I try to decrypt and I have no idea what it means.
I am using Encoding.Unicode.GetString and Encoding.Unicode.GetBytes to write/read the encrypted string in a file.
The full stacktrace is below:
at PInvoke.Kernel32Extensions.ThrowOnError(NTSTATUS status)
at PInvoke.BCrypt.BCryptDecrypt(SafeKeyHandle hKey, Byte[] pbInput, Void*pPaddingInfo, Byte[] pbIV, BCryptEncryptFlags dwFlags)
at PCLCrypto.SymmetricCryptographicKey.Decrypt(Byte[] ciphertext, Byte[] iv)
at PCLCrypto.CryptographicEngine.Decrypt(ICryptographicKey key, Byte[] data, Byte[] iv)
at Myapp.filename.d__13.MoveNext()
+2 I'm getting petty much the same issue - I found from another post on Xam forums that I should be using Unicode that solved the last padding error but this then popped ip.
trace = {PInvoke.NTStatusException: NT_STATUS error: STATUS_DATA_ERROR
(0xC000003E) at PInvoke.Kernel32Extensions.ThrowOnError(NTSTATUS
status) at PInvoke.BCrypt.BCryptDecrypt(SafeKeyHandle hKey, Byte[]
pbInput, Void* pPaddingInfo, Byte[] pbIV, BCryptEncryptFlags dwFlags)
at PCLCrypto.SymmetricCryptographicKey.Decrypt(Byte[] ciphertext,
Byte[] iv) at
PCLCrypto.CryptographicEngine.Decrypt(ICryptographicKey key, Byte[]
data, Byte[] iv)
FWIW this is on a PCL project and occurs when running UWP on the local machine - haven't yet tried it on Android
I notice your post was less than a month ago - I do hope someone can help PCLcrypto is so straightforward to use otherwise

Runtime error with no apparent cause

I'm working with files in free pascal and I'm trying to open a file, but if it doesn't exists then I create it.
This is my code:
program messages;
const PATH_ = 'data/messages/';
type messageFields =
record
date : String
; viewed : Boolean
; text : String
; sender : String [ 8 ]
end
; messagesFile = file of messageFields
;
procedure openMessagesFile ( var _file: messagesFile; _fileName: String; var error: Boolean );
begin
error := false;
assign ( _file, PATH_+_fileName );
{$I-}
reset ( _file );
{$I+}
if ( ioResult <> 0 ) then
error := true;
end;
var _file: messagesFile
; fileName: String
; error: boolean;
begin
readln(filename);
openMessageFile(_file, filename, error);
if ( error ) then
rewrite(_file);
end.
The first time that I execute the program, since the file doesn't exists, throw me an exception.
The second time, works fine!
This is the exception:
An unhandled exception occurred at $00401759 :
EInOutError : Access denied
Have you reproduced this error with the exact code you've posted and I really can't see it causing the error you're getting. I cannot reproduce it and since you haven't included uses SysUtils you should get Runtime error 5 instead of EInOutError.
One thing that's terribly wrong with your code is that you're not closing the file after opening/creating it (although OS usually cleans it up after program finishes). Given this and the fact that you're getting EInOutError instead of Runtime error 5 I believe that your (real, bigger) program keeps the file open after creating it and trying to open it later, but fails since the file is already opened. The second time you run the program the file is already created so it's only opened once (for reading).
The code is a bit atypical, but Windows is known to keep fleeting locks on files for a few seconds even after they are closed and Dos originating code like this might suffer from that.
Maybe using FPC's FileExist() directly works better (IIRC on windows it is findfirst based, and not createfile based)